返回知识库

工程与栈 · 工程协作

命令行CLI

命令行用文字指令操作程序:一条命令写清程序、子命令和参数,标准输出给结果,非 0 退出码告诉脚本失败。

先认出这扇终端,再决定参数齐不齐

下面就是花店部署命令:默认带齐 --env prod。漏掉环境,exit 1 也写在同一扇终端上。

花店终端 · shipexit 0 · 已发布

ship deploy --env prod

已发布 weekend-bouquet

exit 0 · 已发布发布结果长在终端里。

原因:命令把程序、子命令和参数写齐,脚本看退出码 0 就继续。下一步:点「漏掉 --env」,看失败会不会写在终端里。

知识点:命令是给人和脚本一起读的

终端里的命令和退出码已经演示了差异,这里只命名四条。

  • 一条命令 = 程序 + 子命令 + 标志 + 参数。
  • 标准输出给人看结果,错误输出和退出码给脚本判断。
  • 缺必填参数必须非 0 退出,不能假装成功。
  • 离开后要盯:本地和 CI 走同一入口,--help 要能看懂。

什么时候用、怎么用

要重复执行、要给脚本串联时用命令行;一次性点按钮的界面不够。

  • 信号:同样步骤要做很多遍、CI 要自动部署、报错却还是 exit 0。
  • 适用:git、npm、部署、任何可脚本化的操作。
  • 不适用:需要看复杂界面才能决策的探索——那用图形界面。
  • 最短路径:先 --help → 拼齐必填参数 → 看退出码再决定下一步。

正反例:同一条部署命令

目标都是发布花店,只改参数齐不齐。

正例ship deploy --env prod

exit 0,终端写出已发布。结果长在终端里。

反例漏掉 --env 还当成功

exit 1,CI 会停。失败写在红字上。

快速自测

CI 跑 ship deploy 没有带环境,最该看到什么?

继续查证

术语的技术定义和行为以这些一手或权威资料为准。

下一步学

和本知识点经常一起出现的概念。