【发布时间】:2011-02-21 16:41:07
【问题描述】:
我一直在编写一些 shell 脚本,如果任何命令失败时能够停止执行所述 shell 脚本,我会发现它很有用。请参阅下面的示例:
#!/bin/bash
cd some_dir
./configure --some-flags
make
make install
所以在这种情况下,如果脚本不能切换到指定的目录,那么如果失败,它肯定不想在之后执行 ./configure。
现在我很清楚,我可以对每个命令进行 if 检查(我认为这是一个没有希望的解决方案),但是如果其中一个命令失败,是否有全局设置使脚本退出?
【问题讨论】:
-
关于 set -e 的详细信息请联系 Adam(这正是我们想要的)。还要感谢 a_m0d 提供有关陷阱的信息(尽管不是 100% 相关)。
-
这些答案是否适用于
sh与bash一样吗?
标签: bash shell error-handling exit