Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

程序退出码与 shell 的布尔状态

  当一个程序在终端中执行时,其退出码可能会影响后续执行的路线,所以退出码也是个很重要的概念。当退出码为 0 时表示程序正常退出,其它取值均表示异常退出。当我们在终端中使用 && 或 || 来执行后续代码时,这个正异常退出的问题就会影响后续代码的执行方向。
  下面是一个简单的例子,比如我们有 a.js 和 b.js 两个文件
#!/usr/bin/env node
// a.js
process.exit(0);
#!/usr/bin/env node
// b.js
process.exit(1);
  它们的后续处理就可能有两个方向

  这里值得注意的时,shell 中的 && 和 || 是同优先级的,并不像其它编程语言一样是 && 高于 ||。
  所以当我们写的一个服务挂掉时就应该准确地返回一个状态吗,否则在使用时可能选择错误的执行路线。
  这篇文章说的主题很低端?也许在一些懂底层开发的人们看来是入门级的。比如 c 程序员一定知道 main 函数的返回值应该是一个数值,写 void main 的肯定会被吐槽到死,因为这个返回值就是程序的退出码。但这确实是很多 Web 工程师不知道的,而且这是一个坑过无数运维的巨坑。
网名:
3.80.55.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^