`在shell中设置选项

`在shell中设置选项,shell,Shell,我经常在dockerfiles中看到set-e或set-ex,我想知道它们的用途是什么。最近,我还看到了set-o pipefail,我不知道它是做什么的。我试着手动设置查看是否有任何手动描述,但没有,我在这里求助于询问。您可以在这里找到完整列表: -e 如果简单命令以非零状态退出,则立即退出,除非失败的命令是until或while循环的一部分、if语句的一部分、&&或| |列表的一部分,或者如果命令的返回状态正在使用!反转-o退出 -x 在简单命令展开后和执行之前,打印简单命令及其参数的跟踪

我经常在dockerfiles中看到
set-e
set-ex
,我想知道它们的用途是什么。最近,我还看到了
set-o pipefail
,我不知道它是做什么的。我试着
手动设置
查看是否有任何手动描述,但没有,我在这里求助于询问。

您可以在这里找到完整列表:

-e 如果简单命令以非零状态退出,则立即退出,除非失败的命令是until或while循环的一部分、if语句的一部分、&&或| |列表的一部分,或者如果命令的返回状态正在使用!反转-o退出

-x 在简单命令展开后和执行之前,打印简单命令及其参数的跟踪-o xtrace

-o管道故障
如果设置,则管道的返回值是最后一个(最右边)要以非零状态退出的命令的值,如果管道中的所有命令都成功退出,则返回值为零。默认情况下,此选项处于禁用状态。

谢谢您的回答!我终于明白了他们的目的。。