Windowsコマンド虎の巻

if

ifは、バッチプログラム中で条件処理を行うコマンドです。

構文

if [オプション] <条件式> 処理
【オプション】
オプション説明
/I大文字小文字を区別しない
/?コマンドのヘルプを表示する

条件式には以下の表記を使用します。

【不等号など】
不等号など表記記述例
等しい(==)EQU10 equ 10 ⇒ true
等しくない(<>)NEQ10 neq 20 ⇒ true
より小さい(<)LSS10 lss 11 ⇒ true
以下(<=)LEQ10 leq 10 ⇒ true
より大きい(>)GTR11 gtr 10 ⇒ true
以上(>=)GEQ10 geq 20 ⇒ true
否定(!)NOTNOT 10 equ 10 ⇒ false
存在するかどうかEXISTSEXISTS C:¥hoge.txt

EQUは == でもOKです。

サンプル

IF~ELSEIF~ELSE サンプル

@echo off setlocal set a=200 if %a% equ 100 ( echo aは100です ) else if %a% equ 200 ( echo aは200です ) else ( echo aは100でも200でもありません ) endlocal

大文字小文字を区別せず比較する

@echo off setlocal set a=hoge if /i %a% equ HOGE ( echo aはHOGEです ) else ( echo aはHOGEではありません ) endlocal

否定のサンプル

@echo off setlocal set a=100 if not %a% equ 100 ( echo aは100ではありません ) else ( echo aは100です ) endlocal

ファイルが存在するかどうかを判定する

@echo off setlocal set a=c:¥temp¥test2.txt if exist %a% ( echo 指定したファイルが存在します ) else ( echo 指定したファイルが存在しません ) endlocal

備考

  • 括弧の前後には半角スペースが必要です