Linux 不同的BASH退出状态代码

Linux 不同的BASH退出状态代码,linux,bash,exit-code,Linux,Bash,Exit Code,我正在为x86Linux编写一个C程序。我想使用我自己的客户退出代码来帮助用户在程序无法按预期执行时解决调试问题 例如,假设该程序是一个命令行计算器,我想返回以下退出代码并将其记录在手册页中 计算完成并将结果打印到屏幕(正常操作)-返回0 提供的操作数无效(基本上是语法错误!)-返回1 其他一些错误-返回2 另一个错误-返回3 我看到过一些类似的页面,这让我觉得我不能返回任何我喜欢的退出代码。除了0==正常退出之外,这里还有什么官方规则(BASH或Linux标准/指南)我应该遵守吗?您可以返回任

我正在为x86Linux编写一个C程序。我想使用我自己的客户退出代码来帮助用户在程序无法按预期执行时解决调试问题

例如,假设该程序是一个命令行计算器,我想返回以下退出代码并将其记录在手册页中

  • 计算完成并将结果打印到屏幕(正常操作)-返回0
  • 提供的操作数无效(基本上是语法错误!)-返回1
  • 其他一些错误-返回2
  • 另一个错误-返回3

  • 我看到过一些类似的页面,这让我觉得我不能返回任何我喜欢的退出代码。除了0==正常退出之外,这里还有什么官方规则(BASH或Linux标准/指南)我应该遵守吗?

    您可以返回任何您喜欢的完整退出代码。您引用的BASH脚本指南页面只是说,在调试某些返回已知代码的代码时,由于其他原因,可能会造成混乱


    该页面还提到了
    /usr/include/sysexits.h
    ,试图为C程序员系统化退出代码。

    您可以返回任何您喜欢的完整退出代码。您引用的BASH脚本指南页面只是说,在调试某些返回已知代码的代码时,由于其他原因,可能会造成混乱


    该页面还提到了
    /usr/include/sysexits.h
    ,试图为C程序员系统化退出代码。

    最大的限制是$?(返回代码)不能大于255。其他一切都由您决定,只要您记录了返回值和标记时出现的错误,就不会有任何问题。好链接,最好遵守这些限制。祝你好运。退出代码是操作系统的一项功能,而不是任何特定的shell。最大的限制是$?(返回代码)不能大于255。其他一切都由您决定,只要您记录了返回值和标记时出现的错误,就不会有任何问题。好链接,最好遵守这些限制。祝你好运。退出代码是操作系统的一项功能,而不是任何特定的shell。谢谢你指向
    /usr/include/sysexits.h
    的指针,我不知道这一点!感谢您指向
    /usr/include/sysexits.h
    的指针,我不知道这件事!