最近,我想知道如何在中更改脚本的退出状态或结束状态bash
。例如; 说我们运行test.sh
并在程序中使用exit 0
…退出,我想知道更改该退出状态为的正常程序是什么1
?我知道您可以使用,exit 1
但这是设置退出状态的实际标准吗?
非零退出表示错误。零表示成功。在大多数情况下,尝试删除不存在但失败的文件与实际删除文件一样好,因此由脚本决定是否将这些文件视为失败还是成功。
那么您应该使用什么数字呢?在使用Unix的30多年中,我从未见过任何标准。如果其他人正在使用您的脚本,那么为了清楚起见,重要的是您可以只使用一个退出代码来解决故障,或者定义退出代码的含义。可以通过多种方式包括定义。一种方法是回显退出代码以及可能导致标准错误的原因列表,如下所示:
echo -e "Return code Error: " $Error "\n Possible errors are\n" \
"1 = missing parameter\n" \
"2 = Could not do what you wanted \n" >&2
当然,还有很多替代方法,例如用注释记录代码中的错误(最好将其放在脚本的前面,而不是分散在整个脚本中)或为脚本中的脚本添加一个可选参数,如
$myscript -error [other parameters if any]
打印所有可能的错误。
我已使用其他脚本调用的脚本中的错误代码作为返回信息:
0为成功,正为错误,负为无错误,但需要采取特殊措施
如果直接运行被调用的脚本,那不是很好,因为这可能会使用户感到困惑,但是被调用的脚本可以检查这种情况。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句