NPMクック:コマンドー、コマンドラインパラメータ処理フレーム


NPMクックは、1日2分、人気のNPMライブラリを知る.
昨日、Node.jsコマンドラインパラメータを解析するために学習したminimistライブラリは、パラメータ配列process.env.argvをよりアクセスしやすいオブジェクトに変換することができます.
今日はもっと強力なコマンドラインのパラメータ処理を続けます.
commander
commanderはコマンドラインパラメータ処理の完全な解決策であり、パラメータ配列の解析変換だけでなく、以下の特性をサポートします.
  • パラメータフォーマット正規マッチ
  • 可変数パラメータリスト
  • パラメータのデフォルト値
  • パラメータ別名は
  • をサポートします.
  • パラメータ文法を定義することができます.
  • サブコマンドサポート
  • カスタムヘルプ情報出力
  • アプリケーションの例:
    const program = require('commander');
    
    program
      .version('0.1.0')
      .option('-C, --chdir ', 'change the working directory')
      .option('-c, --config ', 'set config path. defaults to ./deploy.conf')
      .option('-T, --no-tests', 'ignore test hook');
    
    program
      .command('setup [env]')
      .description('run setup commands for all envs')
      .option("-s, --setup_mode [mode]", "Which setup mode to use")
      .action(function(env, options){
        let mode = options.setup_mode || "normal";
        env = env || 'all';
        console.log('setup for %s env(s) with %s mode', env, mode);
      });
    
    参考資料
    https://github.com/tj/command...
    http://tj.github.io/commander...
    大衆番号を歓迎します.梁興臣
    毎日NPMライブラリを理解して、一年後にNode.jsの達人になります.