支持所有版本。
继上个方法我们还有新的方法捕获控制台中的错误。
$ErrorActionPreference = 'Continue' $result = net.exe user UserDoesNotExist 2>&1 # $? is $false when something went wrong if ($? -eq $false) { # read last error: $errMsg = $result.Exception.Message -join ',' Write-Host "Something went wrong: $errMsg" } else { Write-Host 'All is fine.' }
注意:这里使用的$ErrorActionPreference:被设置为’stop’,该错误被视为.net中的异常,$ErrorActionPreference默认是 ‘Continue’,使用这个设置,错误将会被记录到$err。
当上条命令失败,接着使用’$?’将会返回false。本例中,代码将返回一个错误消息(也可以将错误保存到日志文件)。
原文地址:Catching Errors in Native EXEs (Part 2)
本文链接: https://www.pstips.net/catching-errors-in-native-exes-part-2.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!