条件失败时如何停止bash脚本?

科索尔

在这里显示了使用||&&在一行中连接命令的执行:如何在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脚本开始就可以使用它!

您可能想要(如钢螺丝刀指出的那样)

true || { echo "This shouldn't print" && exit; }

否则,您的脚本会一次读取一个条件

a或b然后退出

我想您想要a或(b然后退出)?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

执行bash脚本时如何显示行号

来自分类Dev

bash脚本在失败时创建回送(使用对话框)

来自分类Dev

如何停止执行bash脚本?

来自分类Dev

我想知道验证失败时如何停止提交表单?

来自分类Dev

如何停止在BASH脚本中串联命令替换的多行输出?

来自分类Dev

如何停止杀死Bash脚本的信号?

来自分类Dev

阴谋集团:如何在测试失败时停止构建?

来自分类Dev

如何避免bash脚本中的竞争条件?

来自分类Dev

子脚本之一失败时不退出bash脚本

来自分类Dev

条件失败时无法停止CoroutineWorker

来自分类Dev

如何通过Linux bash脚本启动/停止Windows服务?

来自分类Dev

如果curl失败,如何停止shell脚本

来自分类Dev

阴谋集团:如何在测试失败时停止构建?

来自分类Dev

如何在终端中停止循环bash脚本?

来自分类Dev

bash脚本中的if条件

来自分类Dev

当docker push失败时,如何在bash脚本中循环3次?

来自分类Dev

如何在bash脚本中启动和停止systemctl服务?

来自分类Dev

启动bash脚本时如何获取PID

来自分类Dev

如何使NUnit在失败时停止执行Class中的测试

来自分类Dev

当条件失败时,如何发送失败的邮件正文?

来自分类Dev

Bash脚本在命令失败时退出(sshpass)

来自分类Dev

Bash脚本检查条件

来自分类Dev

IF语句中满足特定条件时如何停止执行PHP脚本?

来自分类Dev

当循环条件为假时,脚本执行不会停止

来自分类Dev

bash 脚本:如果条件

来自分类Dev

如何编写仅在 bash 脚本中尚未转换特定文件时才运行的条件?

来自分类Dev

如何停止例如 bash 脚本

来自分类Dev

调用多个 NPM 脚本的自定义 NPM 脚本不会在失败时停止

来自分类Dev

满足条件时,Bash 脚本不会继续

Related 相关文章

热门标签

归档