在使用框架的时候往往会使用CLI(command-line-interface),看起来十分屌。但是使用起来感觉还差一些必要的东西,因为这些框架提供的CLI往往只有一些基础的东西。如果我们想把自己的目录结构,自己的工具类等东西直接在创建项目的时候都加进去,一些常用配置都配置完成,这样一个项目创建出来就是一个比较完整的、可以直接进行开发的企业级项目。要达到这样的效果,就只能自己来写一个CLI了。
本篇开始讲如何搭建自己的CLI,直到最后发布到npm上的整个流程。
一、创建命令行命令
第一步:首先创建一个空的文件夹,命令行cd
进入。
使用 npm init -y
生成 package.json
文件(关于这个文件可参考)。
第二步:创建index.js 文件
在此文件最上方添加 #!/usr/bin/env node
指令。
#!/usr/bin/env node
console.log('我的CLI工具');
注:
#!
称为shebang(发音:Xī Ba)/ hashbang (发音:哈希Ba),其作用是根据后面配置的环境去执行这个文件。
/usr/bin/env node
是环境中使用node
指令执行此文件的后续代码。
第三步:配置执行指令
在package.json文件中配置bin
{
"name": "Demo",
"version": "1.0.0",
"description": "",
"main": "index.js",
"bin": {
"mycli": "index.js"
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
bin
是一个对象,里面的key是指令的名称,value是执行的文件,即在命令行中执行这个指令后会去执行后面这个文件。
第四步:连接指令
命令行输入 npm link
,此指令表示将配的内容和环境变量进行关联,这样在命令行中输入mycli
即可看到输出我的CLI工具
更多高级用法参考:
网友评论