Windows-バッチ,ラベルへ移動し、ラベル名と引数を取得する

スポンサーリンク

鍛錬 205

Windows-バッチ,ラベルへ移動し、ラベル名と引数を取得する

ラベルへ移動する際に引数を渡すには、call を使用します。
 
使用方法は、以下に示す通りです。

call :ラベル名 引数1 引数2 引数3 …

ラベルへ移動後のパラメータ取得方法

ラベルへ移動後にパラメータを取得する方法については、以下に示す通りです。

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

バッチファイル

以下は、call を使用してラベル (ラベル名:LABEL_1) へ移動し、ラベル名とラベル移動時の引数を取得するバッチファイル、call_label.bat です。

@echo off

echo これから、LABEL_1に処理を移動します。
echo;

call :LABEL_1 one two three four five

echo LABEL_1から処理が戻ってきました。

exit /b



:LABEL_1

echo LABEL_1に処理が移動しました。
echo;

echo 呼び出されたラベル名 = %0
echo 引数(全て) = %*
echo 引数1 = %1
echo 引数2 = %2
echo 引数3 = %3
echo 引数4 = %4
echo 引数5 = %5

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

実行結果

D:\>
D:\>call_label.bat
これから、LABEL_1に処理を移動します。

LABEL_1に処理が移動しました。

呼び出されたラベル名 = :LABEL_1
引数(全て) = one two three four five
引数1 = one
引数2 = two
引数3 = three
引数4 = four
引数5 = five

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

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