版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/henryhu712/article/details/84262290
npm 不仅可以管理 nodejs 的依赖关系,它还可以用来打包和分发命令行工具!
-
创建一个新的 npm 项目:
$ npm init
给应用起一个名字:ser,其他输入项都直接回车,用默认内容。最后,创建了文件 package.json:
{
"name": "ser",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
创建文件 index.js:
#!/usr/bin/env node
console.log('Hello World!')
为了生成可执行的命令,现在修改 package.json,增加 bin 属性:
"bin": {
"ser": "./index.js"
}
接下来就可以安装了:
$ sudo npm install -g
$ ser
Hello World!
看看都安装了什么:
$ which ser
/usr/local/bin/ser
$ readlink /usr/local/bin/snippet
../lib/node_modules/ser/index.js
在当前目录下,查看:
$ sudo npm link
npm WARN [email protected] No description
npm WARN [email protected] No repository field.
up to date in 1.409s
found 0 vulnerabilities
/usr/local/bin/ser -> /usr/local/lib/node_modules/ser/index.js
/usr/local/lib/node_modules/ser -> /home/hu/tmp2/t/t/tmp
当程序满意之后,你可以使用 npm publish 命令,将其发布到 npm 公共库(public npm registry)。然后,别人就可以通过下面的命令来安装你的脚本程序:
$ npm install -g ser