Node.js 使用commander获取多个命令选项
我正在使用Nodejs和commander创建一个CLI,我需要实现这样的选项/命令Node.js 使用commander获取多个命令选项,node.js,command-line-interface,node-commander,Node.js,Command Line Interface,Node Commander,我正在使用Nodejs和commander创建一个CLI,我需要实现这样的选项/命令 --create user --f-name="Kevin" 我尝试了各种选择,但都能成功 #!/usr/bin/env node const program = require("commander"); function collect(val, memo) { memo.push(val); return memo; } program.version("0.0.1", "-v, --ver
--create user --f-name="Kevin"
我尝试了各种选择,但都能成功
#!/usr/bin/env node
const program = require("commander");
function collect(val, memo) {
memo.push(val);
return memo;
}
program.version("0.0.1", "-v, --version")
.option(
"-c, --create <items>",
"Create user",
collect,
[]
).parse(process.argv);
console.log(' collect: %j', program.create );
#/usr/bin/env节点
const program=需要(“指挥官”);
功能收集(val、备忘录){
备忘录推送(val);
返回备忘录;
}
program.version(“0.0.1”,“-v,--version”)
.选择权(
“-c,--create”,
“创建用户”,
收藏,
[]
).parse(process.argv);
console.log('collect:%j',program.create);
这只在我使用如下--create user,a,d,v
执行时起作用,它给出一个数组collect:[“user,a,d,v”]。关于如何使用Commander.js实现此功能的任何想法,请尝试以下脚本:
程序
.选项('-c,--create',create User')
.option('-un,--user name',Username');
program.parse(process.argv);
log(program.userName,`userName:${program.userName}`)
并从终端执行如下操作:
node command.js——创建用户——用户名=NameUser
我需要检查用户在标志--create
之后输入的值/命令。在这种情况下,它将是user
Ok,因此:选项('-c,--create',create user')
注意,我在--create
之后添加了一个选项,然后您可以使用类似于程序的比较。create===“user”
或使用一个switch语句。小的更正,短选项标志仅为一个字符,因此-u
或-n
,而不是-un
。我不确定是否理解您的意图。我假设从标题和代码中,您希望为--create
提供多个值,看起来很接近,但是您的示例中的--f-name
是什么?