Azure命令行任务-“标准错误失败”和“错误继续(未选中)”之间有什么区别?

时间:2019-10-30 08:23:07

标签: azure-devops azure-pipelines

在Azure命令行任务中,两者之间有什么区别

1)出现标准错误失败

2)继续出错(未选中-设置为false)

什么是标准错误?

enter image description here

2 个答案:

答案 0 :(得分:1)

来自docs

  

failOnStandardError :(可选)如果为true,则当任何错误写入StandardError流时,此任务将失败。取消选中该复选框可忽略标准错误,并依靠退出代码确定状态   默认值:false

这意味着任何将错误写入主机的命令都会导致任务失败。示例:

Write-Error "I will cause the task to fail."

第二件事“继续出错”是一个任务设置,它指示管道是否应继续执行任务。如果启用此功能,即使任务失败,它也会继续处理其他任务。

答案 1 :(得分:1)

默认情况下,任务会查看退出代码,例如在命令行任务中,如果退出代码为1,则任务将失败并显示错误。

因此,如果您的命令行不正确,例如:

echooo "test"

任务将失败。

如果您选中Continue on error,那么即使退出代码将使任务失败,管道也会继续运行,并且他将变为橙色,它将变为橙色(部分成功)。

但是,如果您向stderr写一些东西,例如:

echo test 1>&2

以常规方式,任务不会失败,并且会变为绿色。但是如果您检查Fail on standard error,即使命令正确,任务也将失败。