Parameter 属性は、コマンドレット クラスのパブリック プロパティをコマンドレット パラメーターとして識別します。
構文
[Parameter()]
[Parameter(Named Parameters...)]
パラメーター
Mandatory
(System.Boolean) 省略可能な名前付きパラメーター。
True
コマンドレット パラメーターが必要であることを示します。 コマンドレットの呼び出し時に必須パラメーターが指定されていない場合、Windows PowerShell はユーザーにパラメーター値の入力を求めます。 既定値は false
です。
ParameterSetName
(System.String) 省略可能な名前付きパラメーター。 このコマンドレット パラメーターが属するパラメーター セットを指定します。 パラメーター セットが指定されていない場合、パラメーターはすべてのパラメーター セットに属します。
Position
(System.Int32) 省略可能な名前付きパラメーター。 Windows PowerShell コマンド内でのパラメーターの位置を指定します。
ValueFromPipeline
(System.Boolean) 省略可能な名前付きパラメーター。
True
は、コマンドレット パラメーターがパイプライン オブジェクトからその値を受け取っていることを示します。 コマンドレットがオブジェクトのプロパティだけでなく、完全なオブジェクトにアクセスする場合は、このキーワードを指定します。 既定値は false
です。
ValueFromPipelineByPropertyName
(System.Boolean) 省略可能な名前付きパラメーター。
True
は、コマンドレット パラメーターが、このパラメーターと同じ名前または同じエイリアスを持つパイプライン オブジェクトのプロパティから値を取得することを示します。 たとえば、コマンドレットに Name
パラメーターがあり、パイプライン オブジェクトにも Name
プロパティがある場合、Name
プロパティの値はコマンドレットの Name
パラメーターに割り当てられます。 既定値は false
です。
ValueFromRemainingArguments
(System.Boolean) 省略可能な名前付きパラメーター。
True
は、コマンドレット パラメーターが、コマンドレットに渡される残りの引数をすべて受け入れることを示します。 既定値は false
です。
HelpMessage
(System.String) 省略可能な名前付きパラメーター。 パラメーターの簡単な説明を指定します。 コマンドレットが実行され、必須パラメーターが指定されていない場合、Windows PowerShell によってこのメッセージが表示されます。
HelpMessageBaseName
(System.String) 省略可能な名前付きパラメーター。 リソース識別子が存在する場所を指定します。 たとえば、このパラメーターでは、ローカライズするヘルプ メッセージを含むリソース アセンブリを指定できます。
HelpMessageResourceId
(System.String) 省略可能な名前付きパラメーター。ヘルプ メッセージのリソース識別子を指定します。
DontShow
(System.Boolean) 省略可能な名前付きパラメーター。
True
は、タブ展開と IntelliSense のパラメーターがユーザーに対して非表示になっていることを示します。 既定値は false
です。
備考
この属性を宣言する方法の詳細については、「コマンドレット パラメーターを宣言する方法」を参照してください。
コマンドレットには、任意の数のパラメーターを指定できます。 ただし、ユーザー エクスペリエンスを向上するために、パラメーターの数を制限します。
パラメーターは、静的でないパブリック フィールドまたはプロパティで宣言する必要があります。 パラメーターはプロパティで宣言する必要があります。 プロパティにはパブリック セット アクセサーが必要であり、
ValueFromPipeline
またはValueFromPipelineByPropertyName
キーワードが指定されている場合、プロパティにはパブリック get アクセサーが必要です。位置指定パラメーターを指定する場合は、パラメーターセット内の位置指定パラメーターの数を 5 未満に制限します。 また、位置指定パラメーターは連続している必要はありません。 位置 5、100、および 250 は、位置 0、1、および 2 と同じように機能します。
Position
キーワードを指定しない場合は、コマンドレット パラメーターを名前で参照する必要があります。パラメーター セットを使用する場合は、次の点に注意してください。
各パラメーター セットには、少なくとも 1 つの一意のパラメーターが必要です。 コマンドレットの設計が適切であれば、この一意のパラメーターも必須であることが示されます。 コマンドレットがパラメーターなしで実行されるように設計されている場合、一意のパラメーターを必須にすることはできません。
同じ位置を持つ複数の位置指定パラメーターをパラメーター セットに含める必要はありません。
パラメーター セット内の 1 つのパラメーターのみが
ValueFromPipeline = true
宣言する必要があります。複数のパラメーターで
ValueFromPipelineByPropertyName = true
を定義できます。
パラメーター名のガイドラインの詳細については、「コマンドレット パラメーター名の」を参照してください。
パラメーター属性は、System.Management.Automation.ParameterAttribute クラスによって定義されます。
DontShow
パラメーターには、次の副作用があります。-
DontShow
が使用されていないパラメーター セットがある場合でも、関連付けられているパラメーターのすべてのパラメーター セットに影響します。 - タブ補完と IntelliSense から共通パラメーターを非表示にします。
では、オプションの一般的なパラメーター ( WhatIf 、の確認、UseTransactionの ) は非表示になりません。
-
関連項目
PowerShell