function f() {
command 1
command 2
command 3
command 4
}
我想函数f()以某种方式告诉我,如果4个命令中的任何一个失败,则会出现错误.
我也不想设置-e.我想要运行四个命令,即使一个命令失败.
我怎么做?对不起新手问题 – 我是新手来编写脚本.
解决方法:
如果我理解你正确的问题,你可以这样做:
f() {
err=""
command 1 || err=${err}1
command 2 || err=${err}2
command 3 || err=${err}3
command 4 || err=${err}4
# do something with $err to report the error
}
当然,不是使用变量,而是可以简单地在||之后放置echo命令如果你需要做的就是打印一条错误信息:
f() {
command 1 || echo "command 1 Failed" >&2
command 2 || echo "command 2 Failed" >&2
command 3 || echo "command 3 Failed" >&2
command 4 || echo "command 4 Failed" >&2
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。