Nodejs:需要分配命令行参数

时间:2017-11-30 23:03:19

标签: javascript node.js command-line-interface

请求示例:

node index.js --DIR="/Downloads" --PATTERN=\.js
  • 我发现 process.argv 存储了所有命令行参数。但 我无法将 process.argv 的某些元素分配给 DIR PATTERN 常量。
  • 订单参数可以不同。

1 个答案:

答案 0 :(得分:2)

process.argv存储命令行参数,是的。但它们只是简单的字符串。 Node不知道你想用它们做什么;你需要自己解析它们。你将循环遍历process.argv.slice(2),找出正在分配的常量,处理任何引用或逃避怪异,并手动完成分配。

或者,如果您不想重新发明轮子,请使用类似Yargs的内容:

const argv = require('yargs').argv;

console.log(argv.DIR);      // /Downloads
console.log(argv.PATTERN);  // \.js