本記事の概要
PowerShellの関数には、スイッチパラメータと呼ばれる特殊なパラメータを定義することができます。
この記事では、関数にスイッチパラメータを作成する方法について説明します。
関数にスイッチパラメータを作成する
PowerShellの関数には、スイッチパラメータと呼ばれる特殊なパラメータを定義することができます。スイッチパラメータは、パラメータに値を指定する必要がなく、パラメータ名だけを使ってオン/オフの切り替えができるパラメータです。
スイッチパラメータを定義するには、以下のようにパラメータの名前の前に[switch]をつけます。
function <関数名> { param( [switch]<パラメータ名> ) # 関数の処理内容を記述 }
例えば、以下は、スイッチパラメータを使って、ユーザーにメッセージを表示する関数の例です。
function Say-Message { param( [switch]$loud ) $message = "Hello, World!" if ($loud) { $message = $message.ToUpper() } Write-Output $message }
この関数では、$loudというスイッチパラメータが定義されています。このパラメータは、$trueまたは$falseの値を持ちません。このため、パラメータを指定するだけで、$trueとなります。
この関数を呼び出す場合、以下のようにスイッチパラメータを指定することができます。
Say-Message -loud
この場合、-loudというスイッチパラメータが指定されているため、$messageは大文字に変換されて”HELLO, WORLD!”と表示されます。逆に、スイッチパラメータを指定しない場合は、$messageは小文字のまま”Hello, World!”と表示されます。
スイッチパラメータは、関数の使用方法を簡単にすることができるため、特にTrue/Falseのオプションが必要な場合に便利です。
コメント