9. Windows - バッチ - ファイルの有無やエコーなど

 
9.1 ファイルの有無により分岐する
9.2 エコーバックの制御
9.3 ログファイルへの出力
9.4 日時の文字列化
9.5 引数の取得

9.1 ファイルの有無により分岐する


IF EXIST ファイル名 (GOTO ARI) ELSE (GOTO NASI)

:ARI
存在しないときの処理を記述
GOTO FINAL

:NASI
存在するときの処理を記述
GOTO FINAL

:FINAL
 逆の場合

IF NOT EXIST ファイル名 (GOTO NASI) ELSE (GOTO ARI)

:NASI
存在しないときの処理を記述
GOTO FINAL

:ARI
存在するときの処理を記述
GOTO FINAL

:FINAL

9.2 エコーバックの制御


ECHO OFF
でエコーバックを抑止

ECHO ON
 でエコーバックを促進  エコーバックしている状態でも

@ECHO ...
 と 先頭に「@」を記述することにより表示を抑止することができる。  エコーバックさせないように先頭に

ECHO OFF
 と記述していても、実行開始時に「ECHO OFF」だけは出力されますが、先頭に「@」をつけていれば、「ECHO OFF」の出力も抑止できます。

9.3 ログファイルへの出力

 前項の応用で

@ECHO ... >> ログファイル名
 と記述することにより、バッチ実行時のログを出力することができる。

9.4 日時の文字列化


%DATE%
で日付を

%TIME%
で時刻を扱うことができる。

9.5 引数の取得

 %1 から始まる変数名でバッチの引数を取得することができる。  %0 はバッチファイル自身のファイル名となる。