HOME > PowerShell構文 > if構文
if構文
if構文は、条件により処理を分岐させたい時に使用します。
解説
if文はスクリプト内で条件に基づいて異なる処理を実行するための制御構文です。
構文
- (if 構文)
- if (<条件式>) { <条件式>が$Trueの場合の処理 }
- (if-else 構文)
- if (<条件式>) { <条件式>が$Trueの場合の処理 } else { <条件式>に当てはまらない場合の処理 }
- (if-elseif-else 構文)
- if (<条件式1>) { 条件式1が$Trueの場合の処理 } elseif (<条件式2>) { 条件式2が$Trueの場合の処理 } else { <条件式1>、<条件式2>とも当てはまらない場合の処理 }
※if文の各部分の詳細は以下です。
- <条件式>
- 各反復の前に評価される式。
この条件がTrueである間ループ処理を継続します。
PowerShellでは、条件式に使用する比較演算子は一般的な記号(<、= など)は使用できません。
以下の表の比較演算子をご使用ください。
比較演算子 | 記号 | 説明 |
---|---|---|
-eq | = | 等しい |
-ne | <> | 等しくない |
-lt | < | より小さい(未満) |
-le | <= | 以下 |
-gt | > | より大きい |
-ge | >= | 以上 |
サンプル
if文のサンプル
$number = 10
if ($number -gt 5) {
Write-Host "値は5より大きいです。"
}
if-else文のサンプル
$number = 3
if ($number -gt 5) {
Write-Host "値は5より大きいです。"
} else {
Write-Host "値は5より大きくないです。"
}
if-elseif-else文のサンプル
[int]$age = Read-Host "年齢を入力してください"
if ($age -le 6) {
Write-Host "未就学児です。"
} elseif ($age -lt 20) {
Write-Host "未成年です。"
} else {
Write-Host "大人です。"
}
備考
- 大文字小文字は区別しないので、if、If、IFどのパターンで書いても問題ありません。
- if構文は、switch構文に置き換えられる場合もあります。
関連項目
- PowerShell構文
- if構文:条件分岐を行う
- for構文:ループ処理を行う
- foreach構文:コレクションの各要素に対して処理を行う
- switch構文:特定の式の値に基づいて多分岐を行う
- while構文:特定の条件が満たされている間、繰り返し処理を行う
- do-while構文:少なくとも一度はループ内の処理を実行することを保証する