gpt4 book ai didi

Powershell 枚举参数

转载 作者:行者123 更新时间:2023-12-03 16:43:24 35 4
gpt4 key购买 nike

[Parameter (Mandatory=$False)]
[ValidateSet("Val1", "Val2", "Val3", "Val4", "Val5",ignorecase=$true)]
[string[]] $configs = ""

有没有办法改变上述内容,以便我可以一次接受多个枚举值?

我希望能够像这样启动脚本:

.\MyAwesome-Script.ps1 -config Val1 Val2(或枚举值的任意组合作为参数)

但我还需要它是制表符完成的(这甚至是一个词吗?)

为了完整起见,我使用的是 PS 4.0 并且还安装了 PSCX 3.1

最佳答案

只需将您的变量设为数组,它就可以正常工作。给定以下函数:

function Test-ValidateSet
{
PARAM(
[ValidateSet("Val1", "Val2", "Val3")]
[string[]]$MyParam
)

foreach($value in $MyParam)
{
Write-Host "Parameter given: $value"
}
}

对于上述方法,我在 MyParam 参数上获得了 tab-completion。要为参数输入数组,只需用逗号分隔值即可。

Test-ValidateSet -MyParam Val1, Val2, Val3

这支持 PowerShell 控制台和 PowerShell ISE 中的 tab-completion。

关于Powershell 枚举参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23704235/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com