SIPS を使用して画像の pixelWidth を取得すると、見出しが出力されます。例えば
sips -g pixelWidth $images
戻り値
" pixelWidth: 1920"
運がないので、整数部分のみを取得しようとしています:
sips -g pixelWidth $images | grep \d+$
何か案は?
すでに有効な回答があるため、読みやすく堅牢な代替手段として、次のawk
ように使用できます。
sips -g pixelWidth image.png | awk '/pixelWidth:/{print $2}'
つまり... 「「pixelWidth:」という単語を含む行では、2 番目のフィールドを出力してください。」
grep の -E (正規表現) および -o (一致をキャプチャ) フラグを使用したい場合、これは私にとってはうまくいきます:
sips -g pixelWidth menu_icon.png | grep -Eo "\d+"
画像へのファイル パスに数字が含まれている場合は、それらが表示されることに注意してください (sips はファイル パスも出力するため)。そのためpixelWidth
、次のように、数字を grep する前に grepを追加することをお勧めします。
sips -g pixelWidth menu_icon.png | grep pixelWidth | grep -Eo "\d+"