1. ホーム
  2. javascript

[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?

2022-03-14 20:12:46

質問

で書かれたWebサーバーがあります。 Node.js で、特定のフォルダを指定して起動したい。JavaScriptで引数にアクセスする方法がよくわかりません。こんな感じでnodeを動かしています。

$ node server.js folder

こちら server.js は私のサーバーコードです。Node.jsのヘルプによると、これは可能だそうです。

$ node -h
Usage: node [options] script.js [arguments]

JavaScriptでこれらの引数にアクセスするにはどうしたらよいでしょうか?どういうわけか、私はウェブ上でこの情報を見つけることができませんでした。

どのように解決するのですか?

標準的な方法(ライブラリなし)

引数は process.argv

以下は コマンドライン引数の処理に関するノードのドキュメントです。

<ブロッククオート

process.argv は、コマンドライン引数を含む配列です。最初の要素は 'node' で、2番目の要素は JavaScript ファイルの名前になります。次の要素は、追加のコマンドライン引数です。

// print process.argv
process.argv.forEach(function (val, index, array) {
  console.log(index + ': ' + val);
});

これで生成されます。

$ node process-2.js one two=three four
0: node
1: /Users/mjr/work/node/process-2.js
2: one
3: two=three
4: four