Linux使用imagemagick的convert命令压缩图片,节省服务器空间

本人管的一台阿里云服务器由于空间的带宽才只有1MB,图片一多,网站打开就慢,真是蛋疼啊,在不增加带宽的情况只有通过系统让图片更小,这样可以加快速度了,真是人穷就没办法啊。而且压缩图片还可以节省服务器空间,相必也是极好极好的。

安装imagemagick


1sudo apt-get install imagemagick


imagemagick的命令convert可以完成此任务,其参数-resize用来改变图片尺寸,可以直接指定像素值,也可以指定缩放百分比。而如果想降低图片的质量,可以用convert的-quality参数,质量值为0-100之间的数值,数字越大,质量越好,一般指定70-80,基本上看不出前后的差别。

我们首先要获取图片,自然find命令:


1find ./ -regex '.*\(jpg\|JPG\|png\|jpeg\)' -size +500k


统计下数量可对:


1find ./ -regex '.*\(jpg\|JPG\|png\|jpeg\)' -size +500k | wc -l


执行convert 压缩:


1find ./ -regex '.*\(jpg\|JPG\|png\|jpeg\)' -size +500k -exec convert -resize 50%x50% {} {} \;


或者限定大小:


1find ./ -regex '.*\(jpg\|JPG\|png\|jpeg\)' -size +500k -exec convert -resize 800x800 {} {} \;


convert 是会自动按照最大尺寸等比例进行缩小的。

用规则表达式把jpg和JPG后缀图片一网打尽,{}代表查找到的文件,这里没有改变convert前后的文件名,最后是转义的分号表示一个迭代的处理完成。

缩小图片质量为50:


1convert -resize 800x800 -quality 50 1405407568-633.jpg 800.jpg


整合下命令我就不说了,呵呵。。。

加上shell脚本每天定时操作,哈哈,爽 的一塌糊涂。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值