Search notes:

PowerShell: function (and script) parameter attributes

parameter

param([parameter(mandatory=$true)                      ] [int] $i  )
param([parameter(parameterSetName="foo")               ] [int] $i  ) #  See also parameter sets
param([parameter(valueFromPipeline=$true)              ] [int] $i  )
param([parameter(valueFromPipelineByPropertyName=$true)] [int] $i  )
param([parameter(valueFromRemainingArguments)          ]       $ary)
param([parameter(helpMessage=number of iterations      ] [int] $i  )
param([parameter(position=1)                           ] [int] $i  )
param([parameter(dontShow)                             ] [int] $i  ) #  Hide parameter from intellisense

#? param([parameter(experimentAction)                  ] [int] $i  )
#? param([parameter(experimentName)                    ] [int] $i  )
#? param([parameter(helpMessageBaseName)               ] [int] $i  )
#? param([parameter(helpMessageResourceId)             ] [int] $i  )
See also the System.Management.Automation.ParameterAttribute class.

alias

The alias attribute allows to give one or more alternative (and typically shorter) names for a parameter.
param([alias('xyz', 'eggsWhyAndZee')])

supportsWildcards

The supportsWildcards attribute indicates that the parameter accepts wildcard values:
param([supportsWildcards()])
Note, the documentation mentions the following caveat:
Using this attribute does not automatically enable wildcard support. The cmdlet developer must implement the code to handle the wildcard input. The wildcards supported can vary according to the underlying API or PowerShell provider. For more information, see about_Wildcards.

See also

Parameter attributes

Index