【.cmd】 バッチファイルスクリプト %15 【.bat】 (768レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
730(2): デフォルトの名無しさん [] 2025/06/14(土) 08:25:15.70 ID:yDCgYQHw(1/4) AAS
なるほど、あれの/Cオプションの引数にはあるけれど、あれがバッチに渡さないわけね
理解したんで あれ起動時のコマンドラインを愚直にパースするとこんな感じか
@echo off
setlocal enableDelayedExpansion
set CMDLINE=!CMDCMDLINE:*cmd" ="!
set Q="
set "S= "
set i=1
set ARG=
:loop
if !CMDLINE:~%i%! == !Q! goto :pause
set c=!CMDLINE:~%i%,1!
if !c! == !Q! (
call :Q
) else if not !c! == !S! (
call :NQ
) else (
set /a i += 1
)
goto :loop
続く
736(2): デフォルトの名無しさん [] 2025/06/15(日) 07:57:25.07 ID:sG85beXD(1) AAS
>>730-731 に重大な欠陥があった
全角空白 とアンパサンド&echo.この文が単独で表示されたらダメ&pause
というファイル名を試したらダメだった
最後の行のpauseの後にexitを入れてcmd.ехеを終わらせる必要があった
これで >>727727(1): デフォルトの名無しさん [] 2025/06/13(金) 23:37:10.32 ID:lvrE3au7(1) AAS
>>725
試してみました
パスに全角スペースや半角スペースがあっても対応できるようですね
似たような方法を使ってるバッチをQiitaで見たことがあります
上手に回避できてると思いますがパスに&があると問題があります
%1 や %* では限界がある感じがするわ
は直せたはずだけどまだあったら指摘してください
なおUNCパス上でも動作に問題なし
746: デフォルトの名無しさん [] 2025/06/16(月) 21:23:14.37 ID:FL2oCcdJ(3/6) AAS
>>730 にもちょっとあれ表記で書いたけど
cmd.ехеがバッチを起動するときにクオートされてない & までしかバッチに渡さないんだよ
だから%1は&の前までしか入らない
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.032s