我有一个要在多台本地计算机上运行的脚本,但我没有在其中进行任何错误处理。我根本没有在 powershell 中进行任何错误处理,所以我在这里完全是菜鸟。我读过一些关于它的东西,但老实说,我只是在寻找一个快速简单的答案..
问:有没有类似 try/catch 的东西,尽可能少的代码不让脚本变得很重?
我有一个要在多台本地计算机上运行的脚本,但我没有在其中进行任何错误处理。我根本没有在 powershell 中进行任何错误处理,所以我在这里完全是菜鸟。我读过一些关于它的东西,但老实说,我只是在寻找一个快速简单的答案..
问:有没有类似 try/catch 的东西,尽可能少的代码不让脚本变得很重?
是的,在 Powershell v2 中可以使用 try/catch/finally:
Try{
<main code here>
}
Catch{
write-host $_ #Using the reserved $_ variable which should contain the error string
}
Finally{
<clean up code here - will execute regardless>
}
如果您被限制使用 Powershell v1,那么您将不得不使用陷阱构造。
Powershell 2.0 有 try、catch 和 finally。请参阅http://technet.microsoft.com/en-us/library/dd315350.aspx您还可以使用此处的错误捕获来执行更多面向命令行的错误处理变体:http: //www.informit.com/文章/article.aspx?p=729515&seqNum=5