You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下如何修改find命令实现筛选高度小于指定像素的JPG图片

命令修改方案

你原来的命令逻辑中,sed处理后输出的第一列是宽x高格式的字符串,原先的awk 'int($1) < 200 {print}'语句会直接把第一列从左到右转整数,自动截断x后面的内容,所以取的是宽度值做判断。

要筛选高度小于200像素的图片,仅需要修改最后管道后的awk语句部分即可,修改后的完整命令如下:

find . -name '*.jpg' -exec file {} \; | sed 's/\(.*jpg\): .* \([0-9]*x[0-9]*\).*/\2 \1/' | awk '{split($1, res, "x"); if(int(res[2]) < 200) print}' >output.txt

新增的split($1, res, "x")会把宽x高格式的字符串按x分割为数组res,其中res[1]对应宽度、res[2]对应高度,判断res[2]的数值是否小于200即可完成高度筛选。

如果需要一次性筛选宽度或高度任意一项小于200的图片,也可以直接合并判断条件,不需要分开跑两次命令:

find . -name '*.jpg' -exec file {} \; | sed 's/\(.*jpg\): .* \([0-9]*x[0-9]*\).*/\2 \1/' | awk '{split($1, res, "x"); if(int(res[1]) < 200 || int(res[2]) < 200) print}' >output.txt

内容的提问来源于stack exchange,提问作者BenD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 11:06:03