编辑:Mykola Borysyuk建议我使用node-optimist,不幸的是作者说它已被弃用并使用Minimist。
阅读之后,我得到了它的基本要点,但是有人能告诉我一个例子吗?
正如标题所暗示的那样,我试图为命令组合多个参数。
换句话说......
命令转到node init.js search <value>
。
显然我不知道用户在搜索后会输入多少单词,所以我想要将所有这些&#39;参数&#39;我可以将一个字符串发送到我的搜索模块。
我知道我可以使用以下内容来&#34; group&#34;所有参数都成为独立的字符串
var cmd_string = process.argv.map( function(arg){
return "'" + arg.replace(/'/g, "'\\''") + "'";
}).join(' ');
这可以输出所有参数
process.argv.forEach((val, index) => {
console.log(`${index}: ${val}`);
});
但我不知道如何在process.argv[2];
奖励:如果可能,您是否也可以向我展示或链接我能够搜索--option=value
等标志的方式
我花了几个小时冲浪Reddit和谷歌并且做得很短,所以希望你能提供一些见解。
答案 0 :(得分:2)
要获得所有可以使用的参数
^(?<!([a][b][c])).*(?!([d][e][f])$)
例如:
process.argv
process.argv就像:
node test.js arg1 arg2
在您可以使用参数执行所有操作后,例如,加入字符串:
[NodeJs path, file path, arg1, arg2]
要跳过两个元素,您可以使用以下内容:
process.argv.join('');
或 process.argv.slice(2)