Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8691

Node.jsを使ってコマンドライン引数を取得する

$
0
0

コマンドラインから引数を取得するにはprocess.argvを使用する。

test.js
console.log(process.argv)

出力結果

$ node playground/test.js a a a a a a a
[
  '/usr/local/bin/node',
  '/Users/yutakaf/Desktop/git/weather_app/playground/test.js',
  'a',
  'a',
  'a',
  'a',
  'a',
  'a',
  'a'
]

process.argv0の元の値にアクセスするargv[0]必要があるかどうかを確認します。
2番目の要素は、実行中のJavaScriptファイルへのパスになります。
残りの要素は、追加のコマンドライン引数になります。

process.argv[2]から引数になることに注意しましょう。

環境

$ node -v
v12.18.4

JavaScript ES6での書き方ということが言いたかった。

引数をたくさん取得する場合

引数が可変する場合には下記のように要素を取得できる。
forなら下記のように、

test.js
for(vari=0;i<process.argv.length;i++){console.log(`argv[${i}] = ${process.argv[i]}`);}

mapを使うともっとスマートに書ける。

test.js
process.argv.map((v,i)=>console.log(`argv[${i}] = ${v}`))

出力結果

$ node playground/test.js a a a a a a a
argv[0] = /usr/local/bin/node
argv[1] = /Users/yutakaf/Desktop/git/weather_app/playground/test.js
argv[2] = a
argv[3] = a
argv[4] = a
argv[5] = a
argv[6] = a
argv[7] = a
argv[8] = a

コメント

作業中に思い出せなかったこと、ちゃんと仕様を調べようと思ったのでまとめてみた。

References

process.argvのドキュメント
Node.jsでコマンドライン引数を取得する

この記事作成のプロジェクト

weather_app


Viewing all articles
Browse latest Browse all 8691

Trending Articles