Node.js命令行程序开发及运行原理解析

1,040 阅读1分钟

背景

以创建一个.gitignore文件为目标功能,快速掌握nodejs命令行工具开发过程,然后分析运行原理。

命令行程序开发

1、远程拉去源文件,方便随时更新。

http://wdllhj.top/gitignore.txt

2、项目目录结构如下:



index.js为程序入口及主要程序,简单,略过。



package.json文件中添加bin字段,敲黑板!!!


当你在命令行中执行create-gitignore-file命令时,nodejs会执行bin/create-gitignore-file文件中的代码。

来看,/bin/create-gitignore-file文件,使用nodejs来解析该文件。

#!/usr/bin/env node
var generator = require("../index.js.js");generator();

package.json文件的同级目录执行npm install . -g安装到本地,进行验证。生成.gitignore就是成功来。


可以尝试发布自己的成果。

1、切换到npmjs源地址,npm login

2、执行发布npm publish


至此,该功能已经完成。


命令行可执行程序运行,是如何工作的?

当通过npm install create-gitignore-file -g命令安装你的nodejs命令行工具时,npm会根据这个 bin字段,生成可执行程序。

- windows系统:create-gitignore-file.cmd (位于C:\Users{用户名}\AppData\Roaming\npm)

- linux系统:create-gitignore-file(/node/v12.16.0/bin/create-gitignore-file)

以linux系统为例,cd /node/v12.16.0/bin/ 这个可执行程序是个软连接的形式,

lrwxr-xr-x  $ create-gitignore-file@ -> ../lib/node_modules/create-gitignore-file/bin/create-gitignore-file

以此来运行我们全局安装包中的bin程序,调用主体功能。