バッチファイル | if~else文で条件分岐をする方法
Windowsのコマンド・プロンプトを実行するバッチファイルにて、if文でelse、else ifでの条件分岐をする方法とサンプルコードを紹介しています。
確認環境
- HP ノートパソコン HP 17s
- OS Windows11 22H2
if文で条件分岐をする
バッチファイルでif文で条件分岐をするには「1f 条件式(処理)」をという記述方法になります。
以下のサンプルコマンドでは、バッチファイルの実行後にコマンドプロンプトを開き、数値の入力を求めています。
入力された結果が「0」の場合のみテキストを表示します。
@echo off
chcp 65001
set /p num=数字を入力してください:
if %num%==0 (
echo 入力された数字は 0 です。
)
PAUSE
if~else文で条件分岐をする
if~else文で条件分岐をするには「1f 条件式(処理) else (処理)」をという記述方法になります。
以下の場合、入力された数値が「0」の場合、または「0」以外の場合で、表示する結果を変更しています。
@echo off
chcp 65001
set /p num=数字を入力してください:
if %num%==0 (
echo 入力された数字は 0 です。
) else (
echo 入力された数字は 0 ではありません。
)
PAUSE
if~else if文で条件分岐をする
else if文で条件分岐に含める場合は「1f 条件式(処理) else if (処理)」をという記述方法が可能です。
以下の場合、入力された数値が「0」の場合、「1」以外の場合で特定のテキストを表示し、それ以外の場合は最後にelse文で結果を表示するようにしています。
@echo off
chcp 65001
set /p num=数字を入力してください:
if %num%==0 (
echo 入力された数字は 0 です。
) else if %num%==1 (
echo 入力された数字は 1 です。
) else (
echo 入力された数字は 0 または 1 ではありません。
)
PAUSE
「chcp 65001」コマンドは日本語を含むマルチバイト文字を文字化けさせない為に記述しています。
「PAUSE」コマンドはバッチファイルを実行後、コマンドプロンプトを起動したままにします。
ディスカッション
コメント一覧
まだ、コメントがありません