bash在第一次失败时终止

use*_*089 4 bash shell

有没有办法让我的bash脚本终止于第一个返回非零状态的命令?

我知道我可以用它来链接它&&:

cd /stuff &&
echo 'what's up' &&
....
Run Code Online (Sandbox Code Playgroud)

还有另外一种方法吗?

Gil*_*not 7

是的,这简单的在后脚本的开头添加家当:

set -e
Run Code Online (Sandbox Code Playgroud)

如果您需要(仅代码的一部分),您可以停止此操作

set +e
Run Code Online (Sandbox Code Playgroud)

或者在shebang:

#!/bin/bash -e
Run Code Online (Sandbox Code Playgroud)

或者通过以下方式调用脚本:

bash -e script.bash
Run Code Online (Sandbox Code Playgroud)