如何在 PowerShell 函数中使用 ValidateCount 特性?
PowerShell 函数中的 validateCount 特性用于验证数组的长度,这意味着你可以将特定的参数数量传递到参数中。在下面的示例中,当我们传递值时,数组需要至少包含 1 个且最多包含 4 个值。为此,我们将编写以下脚本,
Function ValidateArray { Param ( [ValidateCount(1,3)] [String[]]$Animals ) return $PSBoundParameters }
输出
PS C:\> ValidateArray -Animals Cow, Dog, Cat Key Value --- ----- Animals {Cow, Dog, Cat}
上面的输出有效,但当我们传递 null 或 4 个值时,它将变为无效,因为我们已经声明了数组的长度应该在 1 到 3 之间。
PS C:\> ValidateArray -Animals @() ValidateArray: Cannot validate argument on parameter 'Animals'. The parameter req uires at least 1 value(s) and no more than 3 value(s) - 0 value(s) were provided. PS C:\> ValidateArray -Animals Cow, Dog, Cat, Tiger ValidateArray: Cannot validate argument on parameter 'Animals'. The parameter req uires at least 1 value(s) and no more than 3 value(s) - 4 value(s) were provided.
广告