OptiPNG和jpegoptim工具来可以对图片进行无损压缩,于是xiaoz在此基础上编写了一个shell脚本来调用OptiPNG、jpegoptim工具自动完成批量压缩图片。

目前支持.jpg/.jpeg/.bmp/.png格式图片

安装OptiPNGjpegoptim

Shell脚本需要调用OptiPNG和jpegoptim这两个工具,安装OptiPNG、jpegoptim是必须的,这里仅以CentOS为列,其它Linux系统可自行搜索安装。

#安装epel源
yum -y install epel-release
#安装OptiPNG
yum -y install optipng
#安装jpegoptim
yum -y install jpegoptim
#下载批量压缩脚本
wget https://raw.githubusercontent.com/helloxz/shell/master/img_compress.sh

调用shell脚本批量压缩

bash img_compress.sh /data/wwwroot/imgurl

其中/data/wwwroot/imgurl修改为自己的图片目录(需要使用绝对路径)

crontab定时执行

#先将脚本赋予执行权限
chmod +x img_compress.sh
#添加定时任务
crontab -e
#将内容复制到最后并保存(每小时执行一次)
*/60  * * * * /yourpath/img_compress.sh /data/wwwroot/imgurl > /dev/null

重载crontab

service crond reload

脚本地址:https://github.com/helloxz/shell/blob/master/img_compress.sh

作者:xiaoz(xiaoz.me)