1.0.0 • Published 4 years ago

leeguangxing-truck v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
4 years ago

truck CLI

梦想制作!目标是一条命令部署一个甚至多个网站。Amazing!

一、基于 Node.js 的 npm 包 cli 工具实现原理是?

package.json 官方说明文档

通过在 package.json 中添加 bin 字段,告诉 npm/yarn 将可执行文件添加到 PATH 中。

另外,需要在可执行文件开头添加:

#!/usr/bin/env node

stack overflow 中对该行的解释

1、它称作 Shebang 行。

https://en.wikipedia.org/wiki/Shebang_(Unix)

2、在类 Unix 平台上,通过 /usr/bin/env 告诉操作系统在 $PATH 中搜索 node,并使用匹配可执行程序执行该文件。

3、在 Windows 平台上,npm 解析器会根据这 Shebang 行创建包装批处理文件(*.cmd)。

二、如何在本地临时安装自己开发的 CLI 工具?

在 package.json 所在目录执行:

yarn link

它会在全局注册 package.json 中 bin 字段声明的程序。

三、truck CLI 使用到哪些模块?

第三方模块

  • commander :node.js 命令行工具解决方案
  • chalk :命令行字符串样式工具
  • inquirer :交互式命令行界面集合
  • mkdirp :目录创建
  • fs-extra :快速用深拷贝目录
  • shelljs :node.js 的 Unix Shell 命令

内部模块

  • fs
  • child_process
  • path
1.0.0

4 years ago