zoukankan      html  css  js  c++  java
  • nodejs中命令行中参数的获取和解析

    首先,假设有如下的命令行 node  abc.js arg1 arg2 arg3,现在想在abc.js中获取后面的参数arg1、arg2、arg3…

    var args = process.argv.splice(2);

    process是一个全局对象,argv返回的是一组包含命令行参数的数组。第一项为”node”,第二项为执行的js的完整路径和文件,后面是附加在命令行后的所有参数。

    其次,nodejs中经常利用minimist模块,minimist 是一个node 模块,用来做命令行参数解析。

    var argv = require('minimist')(process.argv.slice(2));

    比如,解析

     $ls -a avalue -b bvalue arg 
    

    效果简单明了:

    argv.a=avalue

    argv.b=bvalue
    argv._[0]=ls
    argv._[1]=arg

    这里的-a,-b 都是一个string类型的参数,值分别为 avalue,bvalue 。具体的命令格式和参数类型,需要自己去看看此模块的readme。

    //var objFile = defaultValue(argv._[0], defaultValue(argv.i, argv.input));
    //var outputPath = defaultValue(argv._[1], defaultValue(argv.o, argv.output));
    //var binary = defaultValue(defaultValue(argv.b, argv.binary), false);
    //var embed = defaultValue(defaultValue(argv.e, argv.embed), false);
    //var technique = defaultValue(argv.t, argv.technique);
    参考:(http://www.thinksaas.cn/group/topic/379078/)
  • 相关阅读:
    elasticsearch api
    kaili camera
    mysql create db utf8 character
    npm run-script
    d-link kvm 关闭声音
    setInterval js
    jpa datasource config
    mvn添加本地jar
    Sublime Text 2 中文包
    初遇ping++
  • 原文地址:https://www.cnblogs.com/nidaye/p/5059404.html
Copyright © 2011-2022 走看看