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/)
  • 相关阅读:
    关于Android的布局
    一个新的开端
    Flux的基础概念和实战入门
    在Redux中使用插件createAction之后
    学习
    Object.assign() 对象的扩展
    Redux 中的CombineReducer的函数详解
    React组件的防呆机制(propTypes)
    css的新特性 calc () 使用
    shim和polyfill有什么区别
  • 原文地址:https://www.cnblogs.com/nidaye/p/5059404.html
Copyright © 2011-2022 走看看