2013/09/17更新

[nodeJS] バッチ処理プログラムを書く際に、コマンドライン引数を受け取る

このエントリーをはてなブックマークに追加      

こんにちは、@yoheiMuneです。
今日は、node.jsをバッチ処理やビルド処理に用いる際に、コマンドライン引数を受け取る方法をブログに書きたいと思います。

画像



node.jsでコマンドライン引数を受け取る

node.jsでコマンドライン引数を受け取るには、「process.argv」使います。
process.argvは配列形式で、シェル実行時の内容となる以下のような内容が含まれます。
インデックス 内容
0 node(固定値)
1 JSファイルのパス
2以降 コマンドライン引数の内容

例えば、以下のプログラムがあるとします。
// sample.js 
console.log('args: ', process.argv);
このJSファイルを以下のように呼び出した場合、
$ node sample.js aaa bbb ccc
以下のような結果が出力されます。
// コンソール出力結果
args:  [ 
  'node',
  '/Users/munesadayohei/tmp/sample.js',
  'aaa',
  'bbb',
  'ccc'
]
という感じです。


そのため、コマンドライン引数を扱いたい場合には、process.argv[2]以降の値を取得すれば良いです。 例えば、第1引数の値を使いたい場合には、以下のように記述します。
// 引数チェック
if (process.argv.length < 3) {
    console.log('missing argument.');
    return;
}

// 引数の内容を受け取る
var argValue = process.argv[2];
これで、自由に引数を受け取れるようになりました。



最後に

簡単なことで、process.argvというのを覚えておけば良いのですが、node.jsでちょっとした処理を書くたびに忘れるので、 ブログに残してみました。
node.jsを使う方に少しでもお役に立てれば幸いです。

最後までご覧頂きましてありがとうございました。





こんな記事もいかがですか?

RSS画像

もしご興味をお持ち頂けましたら、ぜひRSSへの登録をお願い致します。