设置退出状态代码的最佳实践

hel*_*hod 6 bash shell exit-code

在实现我自己的脚本时,针对不同的故障场景使用不同的退出代码退出是最佳做法吗?或者我应该只返回退出代码 1 表示失败,返回 0 表示成功,并提供 stderr 的原因?

Mur*_*nik 5

向 stderr 提供描述性错误消息对于交互式用户来说是很好的,但如果您希望其他脚本/程序使用您的脚本,则应该针对不同的故障有不同的错误代码,以便调用脚本可以做出明智的决定如何处理失败。

如果调用程序不希望以不同的方式处理不同的故障,它总是可以检查返回代码> 0- 但不要假设情况确实如此。