手机版

如何编写节点为0的命令行程序

时间:2021-08-28 来源:互联网 编辑:宝哥软件园 浏览:

前言

什么是命令行程序?像我们常见的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或者邮箱删除。