1.指定したラベル行に処理をジャンプ(GOTO) |
  |
バッチ処理ファイル(.batファイル)内にはラベルを指定することができる。
GOTO文はこのラベルに移ることができる。
例)
以下のようにLABEL1という名のラベルに移るバッチファイルを、TEST.BATという名前で保存した。
@ECHO OFF
GOTO LABEL1
ECHO ここは実行されない
:LABEL1
ECHO ここは実行される
|
TEST.BATを実行すると以下のようにLABEL1に移り、「ECHO ここは実行されない」の行は実行されない。
|
2.ユーザからのキー入力を待ち、受け取る(BATKEY) |
  |
BATKEYはメッセージを表示して、その後ユーザからのキー入力を待つ。
ユーザが入力したキー入力はERRORLEVELに返される。
書式は以下のとおり。
BATKEY スイッチ [メッセージ]
スイッチは以下の数値を指定する。
0:入力は数字のみで0から9まで。
1:入力はY(コード:0)とN(コード:255)のみ。
2:すべての入力を受け付ける。入力されたキーのASCIIコード。例えばAが入力されたら65が返される。
例
「0から1の数値を入力してください。」と表示してキーボードから入力された数値を表示する。
※例に出てくるIFは後で説明する。
【バッチファイルの内容】
【実行結果】
1を打つ
|
3.バッチファイル内で条件分岐(IF) |
  |
指定した条件に応じて処理を実行したいときにIF文を使用する。
判定方法として以下の3とおりがある。
【判定方法1】ERRORLEVEL
ERRORLEVELは直前の処理が返すコードである。何を返すかは直前の実施したコマンドやプログラムにより異なる。
1つ前のBATKEYの例のようにERRORLEBELを利用して処理を分岐できる。
のように書く。
【判定方法2】文字列の比較
二つの文字列を比較する判定方法である。
以下のように変数を使用することも可能。
IF "%変数名%" == "%変数名%" 処理内容 |
【判定方法2】ファイルの存在
ファイルが存在するときに処理をすることが可能。
|