画像ディレクトリを繰り返しながら、複数の画像の解像度を同時に取得して表示したいと思います。どうすればいいですか?
私の画像は.jpegと.png形式です。 Transverse_H4096_W4096.jpeg や Thumb.png などの「_」文字を含む名前
答え1
ImageMagickを使用して、identify
現在のディレクトリにあるすべてのJPGファイルの解像度を取得します。
for image in *.jpg *.jpeg *.png
do
echo "$image :"
identify -format "%[fx:w]x%[fx:h]\n" "$image"
done
答え2
これを使用してexiftool
イメージメタデータをインポートできます。
Debian/Ubuntu にツールをインストールするには:
sudo apt-get install libimage-exiftool-perl
Arch Linuxでは:
sudo pacman -Sy perl-image-exiftool
パッケージが同期されると-S
(すべての必須依存関係を含むパッケージがリモートリポジトリから直接インストールされている場合)、-y
プライマリパッケージデータベースの新しいコピーが(で)で定義されているサーバーからダウンロードされます。pacman.conf(5)
man pacman
次に、必要なデータを抽出します。
for image in ./images/*
do
exiftool "-*FileName*" "-*ImageSize*" "$image"
done
出力は次のとおりです。
File Name : linux.jpg
Image Size : 1920x1080
File Name : background.jpg
Image Size : 1020x980