【问题标题】:How can I get a powershell script to exit with a non-zero code when an az cli command fails? [duplicate]当 az cli 命令失败时,如何让 powershell 脚本以非零代码退出? [复制]
【发布时间】:2019-03-28 22:42:50
【问题描述】:

我在我的 CI/CD 环境中的 powershell 脚本中使用 az cli(如果重要,可以使用竹子)。当 az cli 命令返回错误时,脚本会继续执行,就像什么都没发生一样,这是有问题的。

我假设我需要在try/catch 中包装一些东西? az cli 有可以抛出的标志吗?

【问题讨论】:

  • 您需要在 az cli 的每个命令后检查 lastexitcode
  • 检查链接的答案,例如:az do something here; if ($lastexitcode -ne 0) { exit $lastexitcode }。它不必是.exe。任何外部二进制文件都将具有相同的行为
  • 不,您不需要get-process,请查看我之前的评论以及该链接线程上的答案
  • 恐怕除此之外你无能为力
  • 您不能真正在同一个控制台中同时执行 2 个命令。 & - 不需要,你是对的

标签: azure powershell azure-cli


【解决方案1】:

要使用特定的退出代码退出异常,只需在退出后指定它:

try{
   #Code Here....
}
catch{
   Exit 25   
}

【讨论】:

  • 这不适用于 az cli
  • 那是我的下一个问题。 PS 怎么知道 CLI 出错了? CLI 是用 Python 编写的,据我了解不是以 PS 方式“抛出”错误。
猜你喜欢
  • 2015-09-05
  • 2020-10-28
  • 2020-10-25
  • 1970-01-01
  • 2020-10-08
  • 1970-01-01
  • 2020-07-21
  • 2019-02-28
  • 2020-06-27
相关资源
最近更新 更多