假设有 50 张图片,我想知道哪一张的宽度最大。我应该使用哪些命令?
答案1
此命令(从 ImageMagick 识别)输出具有最大宽度的图像:
identify -format "%w %h %f\n" *.png | sort -n -r -k 1 | head -n 1
-format "%w %h %f = 宽度, 高度, 文件名
结果:wh image.png
来源:在文件夹中查找最大图像尺寸: https://unix.stackexchange.com/questions/155544/find-largest-image-dimensions-in-folder
如果您的图像不在同一个文件夹中,请打开终端并从包含子目录的文件夹运行此脚本。
find . -iname "*.png" -type f -exec identify -format "%w %h %f\n" '{}' \; | sort -n -r -k 1 | head -n 1
注意:如果您有多个宽度相同的图像,则只会显示一个结果。要让所有图像列表按宽度排序,请从前置命令中删除 head -n 1。
答案2
此命令将在当前目录中搜索图像宽度。
在安装 imageinfo 之前,必须先使用以下命令:
sudo apt install imageinfo
然后输入此命令
find . -maxdepth 1 -type f -iregex ".*/.*\.\(jpg\|jpeg\|png\|tiff\|bmp\svg\)" \
-exec bash -c "echo -ne {}' '; imageinfo --width {}; echo " \;\
| sort -k2 -n
如果你只想要最大的一个,在上面的命令中添加一个管道
... | tail -n 1