声享正努力加载中...
GreatJiang
完整的Nodejs命令行解决方案
npm install commander
全局对象
本地
const {program} = require('commander')
const {Command} = require('commander')
const program = new Command()
定义
使用.option() 方法来定义选项,同时可以附加选项的简介。
获取
选项可以通过在Command对象上调用.opts()方法来获取。
规则
2.对于多个单词的长选项,使用驼峰法获取,例如--template-engine选项通program.opts().templateEngine获取。
3.多个短选项可以合并简写,其中最后一个选项可以附加参数。
4.-- 可以标记选项的结束,后续的参数均不会被命令解释,可以正常使用
5.默认情况下 选项在命令中的顺序不固定
1.每个选项可以定义一个短选项名称(-后面接单个字符)和一个长选项名称(--后面接一个或多个单词),使用逗号、空格或|分隔。
1.选项无需设置参数:boolean型选项
2.选项则可以设置参数
4.版本选项version
3.取反选项
5.addOption
6.自定义选项处理
通过.command()或.addCommand()可以配置命令,有两种实现方式:为命令绑定处理函数,或者将命令单独写成一个可执行文件
使用
1.通过绑定处理函数实现命令
2.通过独立的可执行文件实现命令
设置
hidden:true
isDefault:true
设置命令参数
顶层命令通过.arguments()设定参数
子命令是写在.command()内
处理函数
独立的可执行(子)命令
帮助信息是 Commander 基于你的程序自动生成的,默认的帮助选项是-h,--help。
Usage
Options
Commands
自定义帮助信息
beforeAll:作为全局标头栏展示
afterAll:作为全局末尾栏展示
before:在内建帮助信息之前展示
after:在内建帮助信息之后展示
.help
.outputHelp
.helpInformation
.usage&.name
通过这两个选项可以修改帮助信息的首行提示
helpOption
addHelpCommand
内建帮助信息通过Help类进行格式化。
#!/usr/bin/env node
npm link