Windows-バッチ,別のバッチを起動して引数を渡す

スポンサーリンク

鍛錬 209

Windows-バッチ,別のバッチを起動して引数を渡す

バッチファイルが別のバッチファイルを起動して引数を渡すには、call を使用します。
 
使用方法は、以下に示す通りです。

call バッチファイル名 引数1 引数2 引数3 …

別のバッチへ処理を移動後にパラメータを取得する方法

別のバッチへ処理を移動後にパラメータを取得する方法については、以下に示す通りです。

パラメータ 記述
呼び出されたバッチファイル名 %0
全ての引数 %*
1つ目,2つ目,3つ目… の引数 %1,%2,%3 …

バッチファイル

sample_1.bat

以下は、call を使用して別のバッチファイル (バッチ名:sample_2.bat) を起動して引数を渡すバッチファイル、sample_1.bat です。

@echo off

echo これから、sample_2.batに処理を移動させます。
echo;

call sample_2.bat one two three four five

echo sample_2.batから処理が戻ってきました。

exit /b

 
sample_2.bat

以下は、sample_1.bat に呼び出されるバッチファイル、sample_2.bat です。sample_1.bat から引数を受け取り表示します。

@echo off

echo sample_2.batに処理が移動しました。
echo;

echo 呼び出されたバッチファイル名 = %0
echo 引数(全て) = %*
echo 引数1 = %1
echo 引数2 = %2
echo 引数3 = %3
echo 引数4 = %4
echo 引数5 = %5

echo;
echo これから、処理を呼び出し元に戻します。
echo;

実行結果

以下は、sample_1.bat を実行し、sample_2.bat への処理移動と引数の受け渡しについて確認しています。

D:\>
D:\>sample_1.bat
これから、sample_2.batに処理を移動させます。

sample_2.batに処理が移動しました。

呼び出されたバッチファイル名 = sample_2.bat
引数(全て) = one two three four five
引数1 = one
引数2 = two
引数3 = three
引数4 = four
引数5 = five

これから、処理を呼び出し元に戻します。

sample_2.batから処理が戻ってきました。
タイトルとURLをコピーしました