package.jsonのバージョンを簡単に取得する方法

どうもSuです。

nodejsで開発しているときに、package.jsonのversionを取得したいときありますよね。

CI/CDで自動的にリリース後のバージョンのタグを作成したりなど、いろんな場面で出てくるのではないかなと思います。

nodejsが入っている環境であれば、こんなshellを書くと簡単に取れます。

node-version.sh

#!/bin/bash
set -euo pipefail

VERSION=$( node -e "console.log(require('./package.json').version)" )
echo $VERSION

shellではなく、nodejsで取りたい場合は以下

const packageJson = require('./package.json');
console.log(packageJson.version);

もし、nodejsがない環境で実行する場合は、以下のようにshellで正規表現を使ってとることもできます。

#!/bin/bash
set -euo pipefail

PACKAGE_JSON="package.json"
VERSION=$(cat $PACKAGE_JSON \
  | grep '"version"' \
  | awk -F: '{ print $2 }' \
  | sed 's/[", ]//g'
)
echo $VERSION

以上、お役に立てれば幸いです。

最新情報をチェックしよう!

bashの最新記事8件