if文

この記事は約2分で読めます。

バッチファイルにおいて条件分岐を行うには、if文を使用します。条件分岐とは、状態によってプログラムの処理内容を変えることです。プログラムの流れが条件によって分岐することから条件分岐と呼ばれます。


if 条件式 (
	処理1
)

条件式が真(=成り立つ)の時に処理1が行われます。

if 条件式 (
	処理1
) else (
	処理2
)

例えば、変数の値を条件式に指定するときは

%変数名%==値

とします。条件が真の時に処理1が行われ、偽の時は処理2が行われます。

@echo off
set /p user_num=1と入力してください:
if %user_num%==1 (
	echo あなたは1を入力しました。
) else (
	echo あなたは1以外を入力しました。
)
pause

実行結果1

1と入力してください:1
あなたは1を入力しました。
続行するには何かキーを押してください . . .

実行結果2

1と入力してください:0
あなたは1以外を入力しました。
続行するには何かキーを押してください . . .

サンプルコードのように、if文を使うと変数の値によって処理を分けることができます。

if文の処理の部分に別のif文を書くと、if文を入れ子にすることができます。

@echo off
set /p user_numA=A入力してください:
set /p user_numB=B入力してください:
if %user_numA%==1 (
	echo A=1です。
	if %user_numB%==1 (
		echo A=B=1です。
	)
) else (
	echo A=1ではありません。
)
pause

実行結果1

A入力してください:1
B入力してください:1
A=1です。
A=B=1です。
続行するには何かキーを押してください . . .

実行結果2

A入力してください:10
B入力してください:5
A=1ではありません。
続行するには何かキーを押してください . . .

入れ子にすると、AかつBやAまたはBなどの複雑な条件を指定できます。

コメント