全力で怠けたい

怠けるために全力を尽くしたいブログ。

ipa ファイルから CFBundleVersion を確認するワンライナーのメモ。

ipa ファイルから CFBundleVersion を確認するワンライナーのメモ。

したいこと

ipa ファイル (iOS のアプリ) しかない状態で CFBundleVersion を確認したい。 中間ファイルとかは作りたくない。

確認する方法

CFBundleVersion は ipa ファイルのなかの Payload/<アプリ>.app/Info.plist に記述されているので、それを確認すればよい。 Info.plist の中身はバイナリーだけど plutil で XML なり JSON なりに変換できるので簡単に読める。

個人的には XML よりも JSON のほうが扱いやすいので Info.plist の中身は plutil で JSON に変換して jq で CFBundleVersion を抜き出してる。

実際の確認

unzip -p <IPA ファイルのパス> Payload/<アプリ>.app/Info.plist | plutil -convert json -o - -- - | jq -r .CFBundleVersion でいける。

hoge.app というアプリの CFBundleVersion を確認する例。

$ unzip -p hoge.ipa Payload/hoge.app/Info.plist | plutil -convert json -o - -- - | jq -r .CFBundleVersion
2.1.14

以上。