我找不到任何表明这是正确行为的文档。我已经在bash 4.2.25和4.1.2上验证了此行为。这些是我可以轻松访问的最新消息。如果有人对为什么条件会更改前面的子shell的行为有一个解释,将不胜感激。
# ( set -e; false ; echo bye )
# ( set -e; false ; echo bye ) || echo "failed"
bye
#
谢谢,布莱恩
请参阅以下链接
在while,if,if或elif保留字之后执行以-!开头的管道之后的复合列表时,-e设置将被忽略。保留字,或除最后一个以外的AND-OR列表中的任何命令。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句