我有一个需要用户大量输入的脚本。我需要验证这些输入。我目前面临的问题是,如果其中一个输入未通过验证,则应提示用户仅重新输入该特定输入,其余所有有效输入应保持原样
样本代码:
Function Validate
{
Param(
[Parameter(Mandatory=$true)]
[ValidateNotNullOrEmpty()]
[ValidateLength(3,5)]
[String[]]$Value
)
}
$Value = Read-Host "Please enter a value"
Validate $Value
Write-Host $value
$Test = Read-Host "Enter Another value"
Write-Host $Test
在这里,当$Value验证失败时,它会抛出异常,并移动以获取第二个输入。
2条答案
按热度按时间3xiyfsfu1#
可以使用
ValidateScript
将其直接添加到参数中hgqdbh6s2#
您可以使用PowerShell Try/Catch and Retry技术来执行以下操作: