如何在一组图像中找到宽度最大的图像?

如何在一组图像中找到宽度最大的图像?

假设有 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

相关内容