1 创建文件夹cli-demo

2 执行npm init 

3 创建cli.js 文件

内容如下: 

//js文件变成可执行文件    

#!/usr/bin/env node
console.log("hello world my cli");
// 根据附带参数 执行相应的代码
function run(argv) {
if (argv[0] === '-v' || argv[0] === '--version') {
console.log('version is 1.0.0');
}
else if (argv[0] === '-h' || argv[0] === '--help') {
console.log('usage:\n');
console.log('-v --version [show version]')
}
}

//  运行 勿忘

run(process.argv.slice(2));
4 修改package.json
{
"name": "cli-demo",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"bin": "cli.js"  //添加可执行文件 起始文件
}
5 执行 npm link
6 命令行测试
cli-demo  输出 hello world my cli
cli-demo -v 输出 version is 1.0.0
7 通过npm publish进行发布,前提是有npm帐号。如何操作可以查看npm 官方文档。
8一些辅助开发插件 
  • Commander.js - 帮助参数解析,我最常用
  • optionator - 帮助参数解析,Eslint 使用
  • Inquirer.js - 常见交互式命令行
  • chalk - 命令行输出自定义颜色

转载于:https://www.cnblogs.com/sdlx/p/9798364.html

js node.js 编写命令工具demo相关推荐

  1. 个人服务器搭建(轻便型) vue.js + node.js + mysql + centOs7

    个人服务器搭建(轻便型) vue.js + node.js + mysql + centOs7 此笔记有望帮助到他人也自己可回顾学习(如有误望指正) 完成以下四点即可开启web服务 一.创建 vue. ...

  2. Vue.js+Node.js开发实战:从入门到项目上线

    <Vue.js+Node.js开发实战:从入门到项目上线>以JavaScript语言为基础,以一个完整的网站开发过程为主线,介绍了一整套面向Web项目的开发技术,如使用Node.js搭建服 ...

  3. 一统江湖的大前端(2)—— Mock.js + Node.js 如何与后端潇洒分手

    <一统江湖的大前端>系列是自己的前端学习笔记,旨在介绍javascript在非网页开发领域的应用案例和发现各类好玩的js库,不定期更新.如果你对前端的理解还是写写页面绑绑事件,那你真的是有 ...

  4. Vue.js+Node.js+MySQL的前后端+数据库系统结构

    前言: 大三暑假回国实习, 经过了1个月时间的培训学习, 本人渐渐熟悉了实习的工作环境和节奏. 由于我所在的前端APP研发部门使用的是Vue.js框架, 因此我在被分配**[公司官方网站的重制]**任 ...

  5. 从零到一的react.js+node.js+express.js+mysql产品开发全流程

    序言 组长说要使自己对产品在技术层面有一个清晰且足够的了解,最好自己动手开发一个迷你产品,例如todolist,因为公司有提供员工自学使用的服务器,所以我就来试试了,而且一步一步的记录自己的学习过程, ...

  6. Vue.js+Node.js爬虫开发一个Github排行榜

    前言 之前使用Node.js开发一个小爬虫,算是初步对爬虫有了一定的了解,但爬取的数据没什么意义.最近使用Github的频率比较高,所以准备爬取一些Github的数据玩下.目前爬取了中国区follow ...

  7. Vue.js+Node.js全栈开发教程:通过Visual Studio Code开发调试Node应用

    目前,有多种开发工具可以支持Node.js应用的开发,比如: jetBrains WebStorm.Eclipse.Visual Studio Code等.这些开发工 具原则上是"条条大路通 ...

  8. [Node.js] node.js入门

    什么是nodejs 1.Node.js官网地址 中文 1.Node是一个构建于Chrome V8引擎之上的一个Javascript运行环境 Node是一个运行环境,作用是让js拥有开发服务端的功能 2 ...

  9. 新晋小王子 doodoo.js Node.js开发框架

    2019独角兽企业重金招聘Python工程师标准>>> Doodoo.js Doodoo.js -- 中文最佳实践Node.js Web快速开发框架,支持Koa.js中间件. //b ...

最新文章

  1. 替代TabActivity,底部菜单主框架搭建
  2. 实战解析:真实AI场景下,极小目标检测与精度提升 | 百度AI公开课
  3. 180.4. WebSphere Commerce Engerprise 7.0 Feature Pack 2.iso
  4. 常考数据结构与算法:表达式求值
  5. JSF 2,PrimeFaces 3,Spring 3和Hibernate 4集成项目
  6. java中sesion
  7. mysql获取各种日期
  8. Python 3.8 稳定版正式发布,新特性全面解读
  9. 关于手动栈 (模板)
  10. Unity cg vertex and fragment shaders(二)
  11. 单词 (Play on Words UVA - 10129 )
  12. 基于SimpleLink CC26x2R LaunchPad的RTLS实时定位系统搭建
  13. python中del什么意思_python中del是什么意思?
  14. 郭霖的LitePal版本历程
  15. 【JAVA】滴滴-2021校招在线笔试-DE数据开发试卷-0913
  16. Latex 对号和叉号的
  17. 什么是HIS,以及HIS的作用,特点,组成部分
  18. stm32F105的Canable开源usb-can项目
  19. 3.《The Shawshank Redemption》
  20. android正在升级正在优化应用程序,为何我的手机开机显示Android正在升级应用程序以优化1...个,共26个。完了后就是正在打开...

热门文章

  1. 基本运算符与if while详解:
  2. 随机生成数组函数+nth-element函数
  3. ASP.NET Core IHostEnvironment和IApplicationLifetime介绍
  4. windows下bash终端--git-bash总汇
  5. Spring Boot 静态资源映射与上传文件路由配置
  6. DL开源框架Caffe | 模型微调 (finetune)的场景、问题、技巧以及解决方案
  7. Office PPT如何切换到返回幻灯片
  8. JavaScript对象的chapterI
  9. 进阶篇-安卓系统:5.安卓手机位置传感器
  10. 【Android】SlidingMenu属性详解(转)