これは Python では慣用的な方法です:
pip freeze > requirements.txt
pip install -r requirements.txt
最初のコマンドは、要件のリストをファイルに保存します。その後、コマンドを使用して、要件を環境にインストールできます。
Nodeには がありますnpm install
が、依存関係の状態をpackage.jsonにダンプする方法がわかりません。Googleで調べたところ、これ:
npm ls | grep -E "^(├|└)─" | cut -d" " -f2 | awk '{FS = "@"; print "\""$1"\"", ":", "\""$2"\""}'
しかし、このパイプラインの作成者が示唆しているように、もっと良い方法があるはずです。ここで何が欠けているのでしょうか?
現在の依存関係をpackage.jsonにダンプしたいだけです。https://npmjs.org/doc/shrinkwrap.html言う、
「npm install」を使用する場合は、「package.json」ファイルが依然として必要です。
に関する情報をざっと読みましたshrinkwrap
が、 でこのタスクを簡単に達成する方法がわかりませんshrinkwrap
。
ベストアンサー1
これが一番近かった
npmフリーズロール
npm ls | grep -E "^(├|└)─" | cut -d" " -f2 | awk -v quote='"' 'BEGIN { FS = "@" } ; { print quote $1 quote,":",quote $2 quote"," }' | sed -e 's/ :/:/g'
出力は次のようになります
"bower": "1.3.12",
"chai": "2.1.2",
"cucumber": "0.4.8",
最後のカンマはまだトリミングする必要がありますが、かなり近いです。