Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    optjspublic

    opt.js

    Probably the sole command line option parser you'll ever need to npm install optjs Ctrl+C, Ctrl+V. Proof:

    function opt(argv) {
        var opt={},arg,p;argv=Array.prototype.slice.call(argv||process.argv);for(var i=2;i<argv.length;i++)if(argv[i].charAt(0)=='-')
        ((p=(arg=(""+argv.splice(i--,1)).replace(/^[\-]+/,'')).indexOf("="))>0?opt[arg.substring(0,p)]=arg.substring(p+1):opt[arg]=true);
        return {'node':argv[0],'script':argv[1],'argv':argv.slice(2),'opt':opt};
    }

    Usage

    var opt = require("optjs")();
    console.log(opt.node);   // Path to node executable
    console.log(opt.script); // Path to the current script
    console.log(opt.opt);    // Command line options as a hash
    console.log(opt.argv);   // Remaining non-option arguments

    Example

    node somescript.js foo -a=1 -b --c="hello world" bar ----d

    // Result
    opt.node   == "/path/to/node[.exe]"
    opt.script == "/path/to/somescript.js"
    opt.opt    == { a: 1, b: true, c: "hello world", d: true }
    opt.argv   == ["foo", "bar"]

    Full-featured test suite

    #!/usr/bin/env node
    console.log(require("./opt.js")());

    License

    MIT

    Keywords

    none

    install

    npm i optjs

    Downloadsweekly downloads

    293,279

    version

    3.2.2

    license

    MIT

    repository

    githubgithub

    last publish

    collaborators

    • avatar