【Windowsバッチファイル(.bat)】文字列の比較と数値の比較について


この記事はプロモーションを含みます。

Windows

ホーム > コマンドプロンプト・バッチファイル リファレンス

Windowsのバッチで、文字列の比較と数値の比較をする方法を解説します。

はじめに

バッチでは、文字列の比較と数値の比較で使用する比較演算子が異なります。
本記事では、サンプルを交えつつそれぞれの比較を行う方法を説明します。

文字列の比較

ここでは、文字列を比較する方法を説明します。

書式

文字列を比較する場合の書式です。

書式説明
If 文字列A==文字列B 処理文字列Aと文字列Bが一致する場合に処理を実行する
If not 文字列A==文字列B 処理文字列Aと文字列Bが一致しない場合に処理を実行する

サンプルと実行結果

文字列比較のサンプルと実行結果です。

@echo off

If メロン==メロン echo 文字列は一致します。
If not りんご==メロン echo 文字列は一致しません。

pause

サンプルの実行結果です。

文字列は一致します。
文字列は一致しません。
続行するには何かキーを押してください . . .

数値の比較

ここでは、数値を比較する方法を説明します。

書式と比較演算子

数値を比較する書式と使用できる比較演算子です。

書式説明
If 数値1 比較演算子 数値2 処理数値1が数値2〇〇の場合に処理を実行する
(〇〇は比較演算子によって異なります)

比較演算子の一覧です。

比較演算子説明使用例
equ数値1が数値2に等しい場合は真数値1 equ 数値2
neq数値1が数値2に等しくない場合は真数値1 neq 数値2
lss数値1が数値2より小さい場合は真数値1 lss 数値2
leq数値1が数値2以下の場合は真数値1 leq 数値2
gtr数値1が数値2より大きい場合は真数値1 gtr 数値2
geq数値1が数値2以上の場合は真数値1 geq 数値2

サンプルと実行結果

数値比較のサンプルと実行結果です。

@echo off

If 99 equ 99 echo 数値は等しいです。
If 11 neq 22 echo 数値は等しくないです。
If 11 lss 33 echo [11]は[33]より小さいです。
If 10 leq 10 echo [10]は[10]以下です。
If 33 gtr 11 echo [33]は[11]より大きいです。
If 10 geq 10 echo [10]は[10]以上です。

pause

サンプルの実行結果です。

数値は等しいです。
数値は等しくないです。
[11]は[33]より小さいです。
[10]は[10]以下です。
[33]は[11]より大きいです。
[10]は[10]以上です。
続行するには何かキーを押してください . . .

コメント

タイトルとURLをコピーしました