大佬教程收集整理的这篇文章主要介绍了linux – 链中的命令失败了什么?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
a && b && c && d echo "Command {xyz} ended with exit code $?"
如果一切顺利,它很简单,因为所有命令都返回0的退出代码.但是如果遇到非零退出代码,是否可以说,哪个命令返回它并打破了链 – 即. {xyz}应该是什么?
Ps.我知道我可以使用嵌套的条件语句,但链接结构非常清晰易懂 – 我只想为它添加一些分析.
{ a; status1=$?; } && { b; status2=$?; } echo "status1=${status1},status2=${status2}"
如果您不需要在命令的stdout中打印输出,可以考虑这样的事情:
run_and_check() { eval "$@" >/dev/null 2>&1 # you Could replace /dev/null by a log file echo $? } status1=$(run_and_check "a") && status2=$(run_and_check "b") echo "status1=${status1},status2=${status2}"
但与第一种更通用且危险性更小的解决方案相比,我们并没有节省太多;)
以上是大佬教程为你收集整理的linux – 链中的命令失败了什么?全部内容,希望文章能够帮你解决linux – 链中的命令失败了什么?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。