batファイル If文のサンプル(Windows)

WindowsのbatファイルのIf文のサンプルです。

目次

If文 If文
  文字列の比較
  ネストのサンプル (if文の中にif文)
  否定(not) Aではない
演算子 比較演算子

If文

if 条件式 (
    処理
) else if 条件式 ( 
    処理
) else (
  処理
)
  • 条件が合致する場合、配下の処理が実行され、if文の処理は終了します。
  • 条件が合致することをtrue(真)ともいいます。
  • 条件が合致しない場合、配下の処理は実行されず、その下(else if/else)に進みます。
  • 条件が合致しないことをfalse(偽)ともいいます。
  • else ifは、複数記述できます。省略可です。
  • elseは、1つのみ記述できます。省略可能です。elseの処理は、どの条件も合致しなかったときに実行されます。

if文のサンプルです。

@echo off
set a=1

if %a%==0 (
	echo 0です
	
) else if %a%==1 (
	echo 1です 出力されます
	
) else (
  echo それ以外です
) 

pause

2行目は、変数に値をセットしています。
4行目からif文が始まります。
7行目のElse If(if文)はtrueになるのでその配下の処理が実行されます。
8行目の処理が実行されif文を抜けます。

文字列の比較

@echo off
set a="test"
set b="test"

if %a%==%b% (
	echo 1です 出力されます
)

pause

文字列の値を比較するときも比較演算子の==で可能です。
文字列は、ダブルコーテションで括ります。

ネストのサンプル (if文の中にif文)

ネストのサンプルです。

@echo off
set a=1
set b=1

if %a%==1 (
	if %b%==1 (
		echo 1です 出力されます
	)
)

pause

6行目は、if文の中にif文を記述しています。ネストの構造です。入れ子ともいいます。
5,6行目は、trueになり文字列が表示されます。

否定(Not) Aではない

If  not 条件式  Then 
  • 条件式がfalseの場合にtrueになります。
  • 条件式がtrueの場合にfalseになります。
@echo off
set a=1

if not %a%==2 (
	echo trueです 出力されます
) 

if not %a%==1 (
	echo trueです
) else (
	echo falseです 出力されます
) 

pause

4行目は値の比較でfalseになり、それを否定するのでtrueになります。
8行目は値の比較でtrueになり、それを否定するのでfalseになります。

比較演算子

比較演算子は、2つの値を比べて真偽値(true/false)を返します。
条件を満たしていればtrue,そうでない場合はfalseです。

比較演算子 説明
a == b aとbの値は等しい
a > b aはbより大きい
a >= b aはbより大きい または 等しい
a < b aはbより小さい
a <= b aはbより小さい または 等しい

関連の記事

VB.NET If文のサンプル

△上に戻る