PowerShell: ifやswitchの条件分岐で「何もしない」場合

ifステートメントやswitchステートメントの特定条件の時に、 処理を何も行わないケースもあります。 PowerShellで「何もしない」場合は何も記述する必要がありません。 Pythonでの「pass」のような文はありません。 ただしコメントは入れておいた方がわかりやすくなります。

if文で「何もしない」場合

次のコードではifステートメントの条件分岐の中で、 変数$nの値が6の時だけ何もしません。

$n = 6

if ($n -eq 5) {
	$a = 10
} elseif ($n -eq 6) {
	# 何もしない
} else {
	$a = 20
}

ただし、何もしない場合でも{}波括弧は必要です。 PowerShellのif文では{}を付けないとエラーが発生します。

switch文で「何もしない」場合

次のコードはswitchステートメントを使った条件分岐で、 変数$nの値が6の時だけ何もしません。

$n = 6

switch ($n) {
	5 { $a = 10 }
	6 { }       # 何もしない
	7 { $a = 20 }
	Default { $a = 30}
}

PowerShellのswitch文もif文と同じように{}波括弧が必要です。
上のように{}波括弧を1行で書く場合、 コメントを入れる位置に注意してください。

{ # 何もしない }

と記述すると{}波括弧の右側もコメントとみなされて エラーが発生します。

{ } # 何もしない

上のように{}波括弧を閉じた後でコメントを入れてください。

(まとめ記事: PowerShell if文

PowerShell