在这里显示了使用||
和&&
在一行中连接命令的执行:如何在bash脚本中检查apt-get错误?
如果某个条件失败,我试图停止执行脚本,
例如
false || echo "Obvious error because its false on left" && exit
它在这里打印Obvious error because its false on the left
并退出我想要的控制台。
true || echo "This shouldn't print" && exit
在这里,没有回显打印,但是exit
命令也运行了,即,控制台已关闭,exit
由于未执行右侧的echo命令,该命令不应该不运行吗?还是默认情况下,&&
运算符左侧的语句被认为是错误的?
编辑:我之前应该提到它,我的目的是回显错误,如果不清楚,则退出。对于我使用&&和||分组条件时捕获错误的特定情况,@ bodhi.zazen答案解决了该问题。
@takatakatek的答案使您对流量控制更加清楚,bash指南链接也非常出色
@muru答案很好地解释了为什么不使用set -e如果您希望通过使用perl和trap的替代方法抛出自定义错误消息,我认为这是更可靠的方法,并且从第二个bash脚本开始就可以使用它!