バッチファイルのパラメータ
%0はバッチファイルのファイル名となる。
C言語と同じ。Javaをやってる人は違和感があるかも。
arg1.bat
@echo off echo %0
D:\MyDoc\work\#blog\コマンドプロンプト>arg1.bat arg1.bat
バッチファイルで使用できるパラーメータは%0〜%9まで
arg2.bat
@echo off echo %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11
%10は使えないので、%1と0の文字列と解釈されてしまう。
(コマンドパラメータが1〜11だと気づかないw)
D:\MyDoc\work\#blog\コマンドプロンプト>arg2.bat a b c d e f g h i j k a b c d e f g h i a0 a1
10個以上パラメータを使いたい場合
%*を使用することで全部表示することはできる。
arg3.bat
echo %*
D:\MyDoc\work\#blog\コマンドプロンプト>arg3.bat a b c d e f g h i j k a b c d e f g h i j k
%*で表示できるけど・・・
いや、そうじゃなくて個別に10個以上パラメータを使いたいたいんだよ
個別に10個以上パラメータを使いたい場合
この場合は、shiftを使ってコマンドパラメータをずらしていく
arg4.bat
:top if {%1}=={} goto :EOF echo %1 shift goto :top
D:\MyDoc\work\#blog\コマンドプロンプト>arg4.bat a b c d e f g h i j k a b c d e f g h i j k