minimist是一个用于处理命令行调用node指令时,处理node之后的一系列参数的模块。
安装:
npm install minimist
使用:
var argv = require('minimist')(process.argv.slice(2));
console.dir(argv);
官方示例:
$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz
{ _: [ 'foo', 'bar', 'baz' ],
x: 3,
y: 4,
n: 5,
a: true,
b: true,
c: true,
beep: 'boop' }
参数格式:
var parseArgs = require('minimist');
var argv = parseArgs(args, opts={});
args就是node指令,opts是一个对象,其值为数组或字符串,介绍如下:
opts
opts.string
- 字符串或字符串数组,其元素对应的指令参数将始终被当作字符串opts.boolean
- 布尔值、字符串或字符串数组,其元素对应的指令参数将始终被处理为布尔值。如果设置为布尔值true则所有带有双横线“--”且没有“=”的参数将被处理为布尔值opts.alias
- 一个对象(其所有元素值为字符串)或两个字符串数组,用来为参数设置别名opts.default
- 一个对象,将参数(元素名)映射为指定的默认值opts.stopEarly
- 值为true时,将第一个非参数字符串之后的所有参数放入argv._
opts['--']
- 值为true时,将双横线“--”以前的所有参数放入argv._
,将双横线之后的所有参数放入argv['--']
opts.unknown
- 定义一个函数,当出现opts中未定义的指令参数,该函数将会被调用。如果该函数返回false,则未知的参数将不会被放入argv。