node.jsで、コマンドで、 node test1.js aaa bbb 動かす場合、コマンドラインの引数 aaa bbb を取得する方法教えて
node.jsでコマンドライン引数を取得するには、グローバルオブジェクトのprocess.argvプロパティを利用します。
例えば以下のようなtest1.jsファイルがあるとします。
// test1.js
console.log(process.argv);
これをnode test1.js aaa bbb
という風にパラメータ付きで実行した場合、次のような出力になります。
[
'node',
'/path/to/test1.js',
'aaa',
'bbb'
]
処理の内容としては、
- process.argv[0]: nodeコマンド自身
- process.argv[1]: 実行されたjsファイルパス
- process.argv[2]以降: コマンドライン引数
という順に格納される配列が取得できます。
なのでコマンドライン引数はインデックス2から参照可能で、このaaaとbbbがパラメータとして渡されていることが分かります。
このprocess.argvを利用することで、node.jsのスクリプトに対して動的に引数を渡しつつ実行することができます。