一、简介
工作中常需要在linux环境下使用shell脚本自动化运行多条命令,在顺序执行多条命令时,需要在前一条命令运行失败时立刻结束脚本,停止运行接下来的其他命令。
本文介绍了三种实现该目标的方法,分别是:使用&&
命令执行控制符,使用set -e
设置shell options和使用trap 'do_somthing' ERR
捕捉ERR
信号进行自定义处理。
二、代码示例
1. 使用&&
命令执行控制符
命令之间使用&&
连接,实现逻辑与的功能,只有前面的命令成功运行才会继续运行之后的命令。
命令示例:
# command without error
echo "first command" && echo "second command" && echo "third command"
运行结果如下:
first command
second command
third command
若某条命令存在错误无法运行,则会立即结束,不再执行之后的命令。
命令示例:
# command with error