Windows Powershell => 引数にブロックを与える
関数定義での引数を[scriptblock]型に指定しておき、 関数内では"&"を使って呼び出します。 関数呼び出しの際には引数にブロック{} を記述し、中にコマンドを記載します。
# if-elseからメッセージ出力する共通関数 function message ([scriptblock]$condition,[string]$ok_message,[string]$ng_message) { if (& $condition) { "$ok_message" >> xxxx.log } else { "$ng_message" >> xxxx.log } } # メッセージ出力関数呼び出し $a = 4 message {$a -lt 4} "$a は4より小さい" "$a は4以上" # $a は4以上 $a = 3 message {$a -lt 4} "$a は4より小さい" "$a は4以上" # $a は4より小さい $a = "abc" message {"$a" -match "a"} "$a はaを含む" "$a はaを含まない" # abc はaを含む $a = "bcd" message {"$a" -match "a"} "$a はaを含む" "$a はaを含まない" # abc はaを含まない