参数属性声明
Parameter 属性将 cmdlet 类的公共属性标识为 cmdlet 参数。
语法
[Parameter()]
[Parameter(Named Parameters...)]
参数
Mandatory
(System.Boolean) 可选命名参数。 True
指示 cmdlet 参数是必需的。 如果在调用 cmdlet 时未提供所需的参数,Windows PowerShell提示用户输入参数值。 默认为 false
。
ParameterSetName
(System.String) 可选命名参数。 指定此 cmdlet 参数所属的参数集。 如果未指定参数集,则参数属于所有参数集。
Position
(System.Int32) 可选命名参数。 指定参数在命令Windows PowerShell的位置。
ValueFromPipeline
(System.Boolean) 可选命名参数。 True
指示 cmdlet 参数从管道对象接受其值。 如果 cmdlet 访问整个对象,而不只是访问 对象的属性,请指定此关键字。 默认为 false
。
ValueFromPipelineByPropertyName
(System.Boolean) 可选命名参数。 True
指示 cmdlet 参数从管道对象的 属性中采用其值,该管道对象的同名或别名与此参数相同。 例如,如果 cmdlet 具有 参数,并且管道对象也具有 属性,则属性的值将分配给 Name
Name
Name
Name
cmdlet 的 参数。 默认为 false
。
ValueFromRemainingArguments
(System.Boolean) 可选命名参数。 True
指示 cmdlet 参数接受传递给 cmdlet 的所有剩余参数。 默认为 false
。
HelpMessage
可选的命名参数。 指定参数的简短说明。 Windows PowerShell cmdlet 且未指定必需参数时,系统会显示此消息。
HelpMessageBaseName
可选的命名参数。 指定资源标识符所在的位置。 例如,此参数可以指定包含要本地化的帮助消息的资源程序集。
HelpMessageResourceId
可选的命名参数。指定帮助消息的资源标识符。
备注
若要详细了解如何声明此属性,请参阅 如何声明 Cmdlet 参数。
cmdlet 可以具有任意数目的参数。 但是,为了提供更好的用户体验,请限制参数的数量。
必须在公共非静态字段或属性上声明参数。 应在属性上声明参数。 属性必须具有公共集访问器,如果指定了 或 关键字,
ValueFromPipeline
ValueFromPipelineByPropertyName
则该属性必须具有公共 get 访问器。指定位置参数时,将参数中位置参数的数量限制为小于 5。 而且,位置参数不一定连续。 位置 5、100 和 250 与位置 0、1 和 2 相同。
如果
Position
未指定 关键字,则必须按其名称引用 cmdlet 参数。使用参数集时,请注意以下事项:
每个参数集必须至少有一个唯一参数。 良好的 cmdlet 设计表明,如果可能,此唯一参数也应是必需的。 如果 cmdlet 设计为在没有参数的情况下运行,则唯一参数不能是必需的。
任何参数集都不应包含多个位置参数,这些参数的位置相同。
参数集内只有一个参数应声明
ValueFromPipeline = true
。多个参数可以定义
ValueFromPipelineByPropertyName = true
。
有关参数名称的准则详细信息,请参阅 Cmdlet 参数名称。
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈