如何解决检索 Powershell cmdlet 的实际返回代码
我正在尝试从 Powershell cmdlet 获取返回代码。此返回码将传递给 Saltstack cmd.run
状态 (success_retcodes parameter)
我的 cmdlet 应该会产生错误:Get-PSSessionConfiguration test
这会产生错误,因为 test 会话不存在。
无论上述 cmdlet 是否失败,立即运行 $?
总是会产生 True
。
这个练习的目的是故意不通过上述参数使我在 Saltstack 中的一个状态失败,我认为该参数采用数字值。 任何建议将不胜感激。
解决方法
为什么不直接使用好的 ol' try/catch 块?
Try {
Get-PSSessionConfiguration test -ErrorAction stop
return $true
} Catch {
return $false
}
,
$LASTEXITCODE
返回最后的退出代码。或者,$Error
是存储所有错误的地方。从那里您可以过滤您想要捕获的错误。
$Error | Select Exception
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。