batファイルのIFコマンド

ifはbatファイルで条件付きの処理を行うコマンドです。

if (not) 文字列A==文字列B コマンドを記述

if not A == B ( echo 真

) else (

echo 偽

)

比較演算子

equ 等しい

neq 等しくない

gtr より大きい

geq 以上

leq 以下

lss より小さい

/i は大文字と小文字を区別しないオプションです。

erroelevel

指定した番号以上の場合に実行されます。

解りやすく言うと、errorlevelで実行したコマンドが正常に終了すれば0ですが、そうでなければ1以上で条件を分岐します。

if errorlevel エラー番号 コマンドを記述

環境変数の%errorlevel%に勝手に代入されます。

exist

指定したファイルが存在する場合に実行されます

if (not) exist コマンドを記述

defind

指定した環境変数が指定されている場合に実行されます

つまり環境変数が定義されていないか?の確認です

if defined 変数名 コマンドを記述

==とequの違い

if 8 == 010 ( echo yes

) else (

echo no

)

上記の実行結果はnoと出ます。文字列として比較しています

if 8 equ 010 ( echo yes

) else (

echo no

)

上記の実行結果はyesと出ます。これは、0で始まる文字列は、それを数字として取り扱うので8進数扱いになります。

両方とも数字だけの文字列なので、数字として大小が比較されます。

8進数の10は10進数んもでの8なので、8と010は同じだと判断されます

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です