所以这是我的情况。
我希望能够退出具有非零值的RC / RC1。当RC为0时执行以下代码时RC1返回非零退出代码(最佳情况)如果RC非零并且RC1也非零,我将错过RC1的退出代码(意味着我不会能够使用RC1的退出代码)。如何发送正确的退出代码?本质上我想通过电子邮件发送非零变量
if [ $RC -ne 0 ] || [ $RC1 -ne 0 ]; then
if [ $RC -ne 0 ]; then
exit $RC
else
exit $RC1
fi
答案 0 :(得分:1)
您想同时返回两个退出代码吗?我想,在驾驶汽车时,你也想同时坐在前排座椅和后排座椅上。你可以做到这一点,但你需要一辆特殊的汽车。以下是制作这样一款车的两个想法:
如果您知道在此上下文中每个退出代码必须是1位数字,您可以返回类似$((RC*10+RC2))
的内容 - 我在这里使用bash / zsh语法,因为您没有说你正在使用哪个shell。如有必要,您必须将其改编为您的shell。
如果至少有一个是非零的话,你可以通过打印“$ RC1 $ RC2”之类的东西来调整你的脚本界面,即:
if [ $RC -ne 0 ] || [ $RC1 -ne 0 ]; then
echo "$RC $RC1" 1>&2
exit 1
else
exit 0
fi
在这两种情况下,调用进程必须拆除组合的退出代码以取回原始代码。