PowerShell コマンドレットを使用するためのパラメーターを検出する
パラメーターは、コマンドレットによって実行されるアクションを変更します。 1 つのコマンドレットに対してパラメーターを指定しない、1 つのパラメーターを指定、または多数のパラメーターを指定することができます。
パラメーターの形式
パラメーター名はダッシュ (-) で始まります。 パラメーター名から渡す値をスペースで区切って指定します。 渡す値にスペースが含まれている場合は、テキストを引用符で囲む必要があります。 一部のパラメーターには複数の値を指定できます。複数の値は、スペースを含めずにコンマで区切ります。
省略可能なパラメーターと必要なパラメーター
パラメーターには、省略可能なものと必須のものがあります。 パラメーターが必須の場合、そのパラメーターの値を指定せずにコマンドレットを実行すると、その値の指定を求めるプロンプトが Windows PowerShell で表示されます。 たとえば、 Get-Item コマンドを実行すると、Windows PowerShell から次のメッセージが表示されます。これには、 -Path パラメーターの値を指定するプロンプトが表示されます。
PS C:\> Get-Item
cmdlet Get-Item at command pipeline position 1
Supply values for the following parameters:
Path[0]:
プロンプトで テキスト C:\ を 入力し、Enter キーを 2 回押すと、コマンドが正常に実行されます。 このパラメーターは複数の値を受け入れることができるため、Enter キーを 2 回押す必要があります。 Windows PowerShell は、実際に値を指定せずに Enter キーを押すまで、新しい値の入力を求めるプロンプトを表示し続けます。
場合によっては、パラメーター名の入力は省略可能であり、パラメーターの値のみを入力できます。 C:\Get-ChildItem コマンドを実行した場合、パラメーター -Path はコマンドレット定義の最初のパラメーターとして定義されているため、コマンドGet-ChildItem -Path C:\ を実行するのと同じです。 これは位置指定パラメーターと呼ばれます。 このコースを通して繰り返し登場します。 パラメーター名を省略しても機能するのは、パラメーター位置が定義されている場合のみです。 すべてのコマンドに位置指定パラメーターがあるわけではありません。
スイッチ
"スイッチ" は特殊なケースです。 これらは基本的にブール値 (true または false) を受け取るパラメーター です。 これらは、コマンドの実行時にスイッチが含まれている場合にのみ値が true に設定されるという点で、実際のブール型パラメーターとは異なります。 たとえば、Get-ChildItem コマンドレットの -Recurse パラメーターまたはスイッチです。 c:\ -RecurseGet-ChildItem コマンドは、C:\ ディレクトリ内の項目だけでなく、すべてのサブディレクトリ内の項目も返します。 Recurse スイッチがないと、C:\ ディレクトリ内の項目のみが返されます。