我有一个bash脚本,它从一些目录中调用多个脚本(bash& python)。
当任何脚本抛出错误/异常时,我想让它中止。
#!/bin/bash
/usr/bin/test.sh /usr/1/sample.sh /usr/2/temp.py
exit 0
有关如何实现这一目标的任何建议吗?
仅供参考:我是bash脚本的初学者。
答案 0 :(得分:1)
您可以将set -e
放在脚本的顶部:
-e errexit If not interactive, exit immediately if any
untested command fails. The exit status of a com‐
mand is considered to be explicitly tested if the
command is used to control an if, elif, while, or
until; or if the command is the left hand operand
of an “&&” or “||” operator.
如果其中一个命令在失败时以退出代码非零退出,则仅将起作用。表现良好的程序应该在成功时始终以0 退出,如果不是,那么你可能想要解决这个问题。
我不完全确定您的期望:
/usr/bin/test.sh /usr/1/sample.sh /usr/2/temp.py
由于这将运行一个带有两个参数的命令(/usr/bin/test.sh
),您可能希望将它们放在不同的行上。