バッチスクリプトの IF ELSE 条件
この記事では、最もよく使用される IF ... ELSE
条件について説明し、IF ... ELSE
コマンドに関する例を示します。
バッチスクリプトで IF ELSE
条件を使用する
IF ... ELSE
コマンドの一般的な形式は、IF [CONDITION] [COMMANDS] ELSE [COMMANDS]
のようなものです。例を挙げて、理解を深めるために説明しましょう。
この例では 2つの変数を合計し、結果が 20 未満かどうかを確認します。
バッチスクリプト:
SET /A x = 10
SET /A y = 5
SET /A z = %x% + %y%
ECHO Sum of a and b is %z%
IF %z% LSS 20 (echo The result is less than 20) ELSE (echo The result is greater than 20)
SET /A x = 10
の行で、算術変数 x
を作成し、それに値 10
を割り当てました。次の行 SET /A y = 5
で、別の変数 y
を宣言し、それに値 5
を割り当てました。
SET /A z = %x% + %y%
この行は、x
と y
の合計の結果の値を保持する z
である別の変数を宣言します。次の行の ECHO Sum of a and b is %z%
は、x
と y
の合計の結果の出力を示しています。
最後の行 IF %z% LSS 20 (echo Result is less than 20) ELSE (echo Result is greater than 20)
は、c
の値が保持するかどうかをチェックする IF ... ELSE
コマンドです。x
と y
の合計の結果の値は 20
未満です。結果が 20 未満の場合、Result is less than 20
と出力されます。それ以外の場合は、Result is greater than 20
と出力されます。
キーワード LSS
を使用したことがわかります。このキーワードは Less Than
を表す演算子であり、左側の値が右側の値よりも小さい場合に true
を返します。
出力:
The result is less than 20
IF ELSE
コマンドで使用できる演算子
IF ... ELSE
コマンドでリレーショナル演算子を使用できます。
EQU
- 等しいNEQ
- 等しくないLSS
- 小さめLEQ
- 小さめ、もしくは等しいGTR
- より大きいGTR
- より大きい、または等しい
また、IF ... ELSE
コマンドで使用できる論理演算子があります。
AND
- 論理的なAND
演算子OR
- 論理的なOR
演算子NOT
- 論理的なNOT
演算子
==
も equals として使用できることに注意してください。その場合、キーワード EQU
を使用する必要はありません。
ここで説明する例は、バッチスクリプトを使用して記述されており、Windows CMD 環境でのみ機能します。
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn