argv-parse

1.0.1 • Public • Published

argv-parse

npm travis standard

Parse command line arguments. This is a lot like yargs or optimist but not as feature rich.

You can specify flags, aliases, or not. Can pass arrays, strings, and booleans. No dependencies.

If you don't need array arguments, I'd recommend using minimist which is very good.

Install

npm install argv-parse

Usage

Say you had a file like foo-bar-qux.js which needed to parse arguments:

var argv = require('argv-parse')
 
// accepts a definition object and args
// if args is undefined, defaults to process.argv.slice(2)
var args = argv({
  foo: {
    type: 'boolean',
    alias: 'f'
  },
  bar: {
    type: 'string',
    alias: 'b'
  },
  qux: {
    type: 'array',
    alias: 'q'
  },
  norf: {
    type: 'boolean',
    alias: 'n'
  }
})
console.dir(args)
$ node foo-bar-qux.js --foo
{
  foo: true
}

$ node foo-bar-qux.js --bar hey
{
  bar: 'hey'
}

$ node foo-bar-qux.js --qux thing1 thing2 thing3
{
  qux: ['thing1', 'thing2', 'thing3']
}

$ node foo-bar-qux.js -f -b hey -q thing1 thing2 thing3
{
  foo: true,
  bar: 'hey',
  qux: ['thing1', 'thing2', 'thing3']
}

$ node foo-bar-qux.js -fn
{
  foo: true,
  norf: true
}

$ node foo-bar-qux.js not specified
{
  _: ['not', 'specified']
}

$ node foo-bar-qux.js --unknown surprise
{
  unknown: 'surprise'
}

If you don't care about aliases or types, you don't actually need to configure anything, argv-parse will intelligently guess how the unknown flag should be interpreted:

simple.js

var argv = require('argv-parse')
var args = argv()
console.dir(args)
$ node simple.js --unknown
{
  unknown: true
}

$ node simple.js --unknown hey
{
  unknown: 'hey'
}

$ node simple.js --unknown hey you
{
  unknown: ['hey', 'you']
}

$ node simple.js first second --unknown hey you
{
  _: ['first', 'second'],
  unknown: ['hey', 'you']
}

License

ISC

Readme

Keywords

Package Sidebar

Install

npm i argv-parse

Weekly Downloads

584

Version

1.0.1

License

ISC

Last publish

Collaborators

  • paulcpederson