为什么退出代码 0 是成功,1 是失败

Roh*_*eja -3 scripts

由于 0 是布尔值false而 1 a true,HTTP 中的 API 不应该为成功返回 response_code 0 而不是 1 吗?

Win*_*nix 6

错误的原因可能有很多,父进程通常会知道子进程具体出了什么问题。因此,0 用于成功,1 到 255 为失败原因提供灵活性。

例如,子进程可以返回:

  • 1 文件未找到
  • 2 用户未授权
  • 3 文件被另一个进程锁定
  • 4 连接未激活
  • 5 配置不完整
  • 6 用户取消进程

等等等等。


Ser*_*nyy 5

将错误指示为非零整数符合 POSIX 标准,也就是符合 Unix 标准,特别是库定义的错误号。例如,本文很好地概述了退出状态。因此,无论我们讨论的是什么 HTTP 服务器进程,如果它希望能够跨多个系统(包括 Ubuntu)移植,它们都应该努力遵守这个标准,是的 - 成功时提供 0。如果我们谈论的是来自客户端的 HTTP 服务器的响应,那么 API 应该符合使用HTTP 状态代码