我知道您可以使用set -e
和trap 'exit' ERR
捕获失败命令,但是当我尝试
trap 'exit' ERR
true && echo "from true"
false && echo "from false"
echo "end"
我明白了
#result
from true
end
#what I want
from true
我知道我可以做这样的事情
true && echo "from true" || exit 1
false && echo "from false" || exit 1
但是我必须使用&&
答案 0 :(得分:1)
通过退出的函数在脚本中重新定义echo
:
echo () {
builtin echo "$@"
exit 1
}
如果您需要echo
,而某处没有exit
,则将该函数重命名为echexit
或其他名称,然后在适当的地方使用它。