Bash:在源脚本中停止错误

前端之家收集整理的这篇文章主要介绍了Bash:在源脚本中停止错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在要执行的 shell脚本中,我可以使用set -e中止错误.

但是,在源脚本中,如果稍后的命令以错误状态退出,则使用set -e将终止原始shell.

source set_e.sh
./exit_1.sh
# shell dies

一个简单的解决方案是在脚本的末尾设置e,但如果使用的话,这会破坏父级的set -e(如果有人将来包装我的脚本,这可能会很好).

如何在源脚本中获得错误中止功能

@H_404_12@ 不可能.但是,如果需要,您可以选择使用子shell:
(
    set -e
    source another.sh
)

只有调用脚本的环境永远不会被被调用的脚本改变.

注意:使用换行符分隔两个命令并不使用分号可能很重要.

猜你在找的Bash相关文章