官网介绍的路径:
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_try_catch_finally?view=powershell-6
1.Try, Catch, and Finally
1)捕获到错误,并打印“Error:配置域失败”
try
{
Add-Computer -DomainName $Domain -Credential $credential -EA stop
}catch{
"Error:配置域失败"
}
2)
Try
{
Add-Computer -DomainName $Domain -Credential $credential -EA stop
}
Catch [System.UnauthorizedAccessException]
{
write-host ""
}
Catch [System.IO.DirectoryNotFoundException]
{
Write-Host ""
}
Catch
{
Write-Host ""
}
Finally
{
}
2.Trap
1)捕获到错误,并打印“Error:配置网络失败”,程序不中断
注:Trap语句要放在发生错误的命令的前面
Trap
{
"Error:配置网络失败";
Continue
}
2)捕获到错误,并将错误原样输出
Trap
{
$_.Exception.Message
Continue
}
我在用到Add-Computer 加域时,用Trap捕获不到连接DNS失败,和用户名密码错误的错误,后来改用-EA stop加try catch捕获到了