我正在使用一个PowerShell脚本来依次完成5个不同的相互依赖的任务。我希望脚本在遇到catch块并发送电子邮件后立即停止执行。此外,此脚本还执行控制台应用程序。如果出现控制台异常,如何停止执行PowerShell脚本?我正在使用-RedirectStandardError
参数记录控制台异常。
最佳答案
在catch块中停止执行是通过使用Break关键字完成的,应在最后添加该关键字,例如:
Catch
{
Send-MailMessage -From ExpensesBot@MyCompany.Com -To WinAdmin@MyCompany.Com -Subject "HR File Read Failed!" -SmtpServer EXCH01.AD.MyCompany.Com
Break
}
如果还要捕获非终止错误,则需要:
-ErrorAction Stop
在Commandlet的末尾(或将其设置为首选项/ session 设置)
https://www.vexasoft.com/blogs/powershell/7255220-powershell-tutorial-try-catch-finally-and-error-handling-in-powershell
关于powershell - 如何在第一个错误时中断Powershell脚本执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43091336/