正文

PowerShell实现参数互斥示例(powershell 脚本)没想到

文章摘要

本文介绍了如何在Windows PowerShell脚本中定义参数集并配置参数属性。文章详细描述了函数`Test-ParameterSet`的参数配置,包括`[CmdletBinding]`绑定、参数集名称(如`NonCredential`、`LocalOnly`、`Credential`)以及参数的可选性。该函数通过检查参数`$ComputerName`是否存在来判断是否进行远程调用。如果`$ComputerName`被指定,则打印“远程调用”提示信息;否则,默认本地执行。文章重点突出参数配置和脚本行为的条件判断逻辑。

 function Test-ParameterSet { [CmdletBinding(DefaultParameterSetName=’NonCredential’)] param ( $id, [Parameter(ParameterSetName=’LocalOnly’, Mandatory=$false)] $LocalAction, [Parameter(ParameterSetName=’Credential’, Mandatory=$true)] [Parameter(ParameterSetName=’NonCredential’, Mandatory=$false)] $ComputerName, [Parameter(ParameterSetName=’Credential’, Mandatory=$false)] $Credential ) $PSCmdlet.ParameterSetName $PSBoundParameters if ($PSBoundParameters.ContainsKey(‘ComputerName’)) { Write-Warning ‘远程调用’ } }