编写一个bash脚本,在使用--help参数调用时显示用法信息,建议退出/退出脚本的退出代码是什么?
$ my_script --help; echo $?
Usage ...
0
Run Code Online (Sandbox Code Playgroud)
要么
$ my_script --help; echo $?
Usage ...
1
Run Code Online (Sandbox Code Playgroud)
如果有不同的意见,一个或其他选项的论据是什么?
grep在MacOS上)的工具,man返回一个非零退出代码.bash,sh,vim返回0作为退出代码.输出应该去,stdout脚本应该返回0,除非出现IO错误.(用户请求帮助屏幕并且您已交付.操作成功.)
如果输出相同的帮助屏幕作为对错误使用的响应,则将其输出到stderr失败(=以非零退出).(用户尝试做某事但他们做错了 - 操作失败了,你给他们一个提示stderr(因为在stdout,他们可能会期待别的东西)关于他们如何正确地做.)
我认为这些都是良好而合理的做法,而且我见过的大多数优秀的CLI工具都遵循它们.(这包括我的Linux Mint's grep,man以及抱怨没有帮助选项ping的警告ping,但它与此建议的第2段一致.)