【.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.ехеを終わらせる必要があった

これで >>727
727(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