Linux环境下压缩优化图片来解决服务器硬盘不够

本地图片越来越多硬盘不够,压缩图片压榨一下

一、png转jpg再压缩

#安装
apt install jpegoptim  imagemagick -y

#查找uploads目录下所有png转jpg(会生成新的jpg文件 xxx.png.jpg)
find uploads -name *.png  -exec convert {} {}.jpg \;

#jpegoptim优化图片,质量设置为80(1-100)(多次执行不会重复压缩的)
find uploads -name *.jpg  -exec  jpegoptim --strip-all --preserve --totals --all-progressive -m80 {} \;

#把后缀*.png.jpg改成*.png,覆盖原来的png(或者你数据库把文件把所有png改了jpg)
for i in `ls uploads/*.png.jpg` ;do mv -vf $i  ${i%.*} ;done

优化前 3.8M

优化后 311k

优化png的还有个optipng(-o 1到10,数字越大花时间越长),优化速度慢,默认png大小比jpg大得多
optipng  -o7 xxx.png

另外imagemagick非常强大,全能的图片处理工具基本相当于
处理视频中的 –>ffmpeg
处理图片–>imagemagick

https://imagemagick.org/

二、使用imagemagick把图片转成webp

#需要先安装webp,ubuntu/debian
apt install webp
#把图片45.png转为45.webp并设置质量为80%
convert -quality 80% 45.png  45.webp
#要批量自己参考上面

同一图webp大小186K,挺多图床不支持webp,有的传上去直接变560k了(压jpg的大小),有的给还原成png 3.8M了

此文章由 hjvn2211445 首发于 hostloc 论坛

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容