[nodeJS] バッチ処理プログラムを書く際に、コマンドライン引数を受け取る
こんにちは、@yoheiMuneです。
今日は、node.jsをバッチ処理やビルド処理に用いる際に、コマンドライン引数を受け取る方法をブログに書きたいと思います。
process.argvは配列形式で、シェル実行時の内容となる以下のような内容が含まれます。
例えば、以下のプログラムがあるとします。
そのため、コマンドライン引数を扱いたい場合には、process.argv[2]以降の値を取得すれば良いです。 例えば、第1引数の値を使いたい場合には、以下のように記述します。
node.jsを使う方に少しでもお役に立てれば幸いです。
最後までご覧頂きましてありがとうございました。
今日は、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を使う方に少しでもお役に立てれば幸いです。
最後までご覧頂きましてありがとうございました。