如何编写节点为0的命令行程序
前言
什么是命令行程序?像我们常见的webpack一样,vue-cli是一个命令行程序。
本文将带您使用来自0的节点编写自己的命令行程序,并将其发布到npm。
准备工作/即将工作
我将编写一个命令行工具来计算提交的个人代码量,名为git-tool。
npm地址和GitHub地址见git-tool。
1.在GitHub上创建一个新的项目git-tool。
2.克隆到当地发展。
执行npm init创建package.json文件。
//其他代码' bin' : {'git-tool' : '。/index.js'},//其他代码的bin字段中的键值可以随意命名,取值为对应的执行文件。
4.创建新的索引文件。
#!/usr/bin/env node console . log(' git-tool ')#!/usr/bin/env node的意思是让系统自己找到节点的执行器,这是必须的。
5.执行npm链接
如果通过执行此命令报告了错误,请参考https://docs.npmjs.com/getting-started/fixing-npm-permissio
6.运行git工具
我们发现git-tool打印在控制台上。
图一
实现
经过以上步骤,我们已经基本设置好了环境,可以开始编写自己的逻辑了。
参数读数
Process.argv用于获取命令行参数。
修改index.js文件
#!/usr/bin/envnode console . log(' git-tool ')console . log(process . argv)然后执行git-tool ss cd,结果如下图所示:
图二
Process.argv返回一个数组。数组的前两位是固定的,它们是节点程序的路径和存储脚本的位置。额外的输入从第三位开始。
npm社区有一些优秀的命令行参数解析包,比如yargs和commander.js
我用指挥官. js
插件
commander.js的基本用法非常简单。
#!/usr/bin/env node const program=require(' commander ');程序。版本(' 1.0.0 ')程序。命令(' codelinenum ')。描述(“计算git提交的代码量”)。选项('-author [author]',计算指定作者git提交的代码量')。action(function(options){ console . log(options . author)})program . parse(process . argv);此时执行git-tool -h,效果如下:
图三
它会帮助我们自动做一些事情,非常方便。
思路
为了实现计算代码提交数量的目标,我们必须使用git命令。
git日志-作者='username' -漂亮=TF format :-numstat
命令输出如下:
图四
第一列是增加的代码行数,第二列是删除的代码行数,第三列是更改的文件。
有些管道命令可以处理这些数据,但Windows系统不支持。
所以我的想法是把数据写入文件,然后逐行读取进行处理。
密码
具体的实现细节就不展开了,有兴趣的可以去GitHub看看源代码。
最终效果如下
图五
图六
发布npm包
1.创建npm帐户(如果已经存在,请跳过此步骤)
注册地址:https://www.npmjs.com/signup
2.登录npm登录
3.发布npm发布
每次发布都需要修改版本;在package.json中;
要发布,国家防范机制的注册地址应设置为http://registry.npmjs.org
http://registry.npmjs.org NPM配置集注册表
参考材料
教你用nodejs编写cli(命令行)。
开发Node.js命令行程序教程阮一峰
以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。
版权声明:如何编写节点为0的命令行程序是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。