如何像cnpm一样自定义命令

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wm5920/article/details/85776492

背景

一开始看到cnpm,以为跟npm一样需要用c开发底层命令,后来谷歌一下,才发现其实也很简单。

实施步骤

新建一个nodecmd文件夹,在里面建一个main.js,内容如下

#!/usr/bin/env node
console.log('hello command');

然后在命令行中初始化

nodecmd> npm init

一路回车,创建package.json
关键一步
修改package.json,添加bin命令

"bin": {
    "mycmd": "main.js"
  }

完整package.json如下

{
  "name": "nodecmd",
  "version": "1.0.0",
  "description": "",
  "main": "main.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "bin": {
    "mycmd": "main.js"
  }
}

接着执行npm link

nodecmd> npm link
npm notice created a lockfile as package-lock.json. 
You should commit this file.
npm WARN [email protected] No description
npm WARN [email protected] No repository field.

搞定,这样就能使用mycmd了

nodecmd> mycmd
hello command

猜你喜欢

转载自blog.csdn.net/wm5920/article/details/85776492