🎉
package.jsonの依存パッケージ名をjqコマンドで列挙する方法 及びその応用
package.json
をJSONとしてjqに渡し、dependencies
またはdevDependencies
のキーを引っ張り出してくることで実現できる。
example
cat package.json | jq '.dependencies | keys'
cat package.json | jq '.devDependencies | keys'
ダブルクォーテーションが邪魔な場合は-r
オプション。
example
cat package.json | jq -r '.dependencies | keys'
各パッケージ名を一つの文字列にしたい場合は、join
すればいい。
example
cat package.json | jq -r '.dependencies | keys | join(" ")'
依存パッケージのアップデートを力業でやりたい時に便利。
example
#bash
eval $(echo yarn add -D (cat package.json | jq -r '.devDependencies | keys | join(" ")'))
#fish
eval (echo yarn add -D (cat package.json | jq -r '.devDependencies | keys | join(" ")'))
Discussion