完脚本我在我的powershell脚本以下代码来验证用户输入(在脚本中的第一位置参数):当Powershell的输入验证失败或产生异常
function validatePath {
Param
(
[Parameter(Mandatory=$true)]
[ValidateScript({
If ($_ -match "^([a-z]:\\(?:[-\\w\\.\\d])*)") {
$True
} Else {
Write-Host "Please enter a valid path,$_ is not a valid path."
Write-debug $_.Exception
Break
}
})]
[string]$filePath
)
Process
{
Write-Host "The path is "$filePath
}
}
validatePath -filePath $args[0]
我的问题是,目前在验证失败,代码进入Else块并击中Break,而不是停止继续运行整个脚本,它会转到下一个块,所有事情都会继续,并出现更多错误。
问题是,我该如何修改我的代码,以便在验证失败时匹配正则表达式,它会抛出相应的错误消息并停止运行整个脚本?
它工作!谢谢! –