Nodejsでコマンドライン引数を扱いたい。
解決策
コマンドライン引数はprocess.argv
で取得できる。
ただし、node
コマンドとスクリプトのパスも引数に含まれてしまうため、
process.argv.slice(2)
とすると良い。
例
spike.js
に以下を記述し、
console.log(process.argv);
node
にspike.js
とその引数arg1 arg2 arg3
を指定して実行すると、以下のように表示される。
$ node ./spike.js arg1 arg2 arg3
[
'/usr/local/bin/node',
'./spike.js',
'arg1',
'arg2',
'arg3'
]
arg1 arg2 arg3
のみを取得する場合は、以下のように修正すると良い。
console.log(process.argv.slice(2));
実行すると、以下のようにarg1 arg2 arg3
のみ表示される。
$ node ./spike.js arg1 arg2 arg3
[ 'arg1', 'arg2', 'arg3' ]