コマンドライン引数のいずれかがに等しいかどうかを最初にテストするWindowsバッチスクリプトを作成したいと思います/?
。そうである場合は、ヘルプメッセージを表示して終了します。そうでない場合は、残りのスクリプトコードを実行します。私は以下を試しました:
@echo off
FOR %%A IN (%*) DO (
IF "%%A" == "/?" (
ECHO This is the help message
GOTO:EOF
)
)
ECHO This is the rest of the script
これはうまくいかないようです。スクリプトを次のように変更した場合:
@echo off
FOR %%A IN (%*) DO (
ECHO %%A
)
ECHO This is the rest of the script
testif.bat arg1 /? arg2
次の出力が得られたら、それを呼び出します。
arg1
arg2
This is the rest of the script
FOR
ループは引数を無視しているように見えます/?
。誰かがこの問題へのアプローチを提案できますか?