超强大的 imagemagick 图片批量压缩

今天在做一个项目时,碰到了需要在服务器批量压缩图片的情况

经过仔细查询,决定选用imagemagick在linux上处理这个问题

第一步,安装

# yum list imagemagick

第二步,

将图片文件里的所有png图片压缩到指定路径下

首先新建一个文件夹

批量缩放图片到指定尺寸的命令:

# mkdir image

# for img in `ls *.png` ; do  convert -sample 25%x25% $img /image/$img ; done

感谢强大的imagemagick工具,一行命令搞定

可以只指定宽度或者高度等比缩放

例如只指定宽度等比缩放的命令: 

# for img in `ls *.jpg` ; do  convert -sample 200 $img thumb-$img ; done

或者只指定高度等比缩放:

# for img in `ls *.jpg` ; do  convert -sample x200 $img thumb-$img ; done

为当前目录的所有图像生成缩略图

for img in `ls*.jpg` do convert -sample 25%x25% $img thumb-$img done

批量缩小根目录文件夹中的图片, 如果宽度大于900px就缩小,否则不动:

for img in `ls */*.jpg` ; do convert -resize "900 >" $img $img ; done

注: -resize 是缩小,-sample 是压缩

注意:为保险起见,压缩图片前可以先拷贝备份一下,安然再压缩就可以了: 例如

cp  upload/* upload2/

你可能感兴趣的:(超强大的 imagemagick 图片批量压缩)