CentOS linux无损压缩图片命令

一般上传的图片都是jpg或者png。那么本次只提供这两个的压缩。 首先安装压缩工具

yum install jpegoptim

yum install optipng

调用shell脚本批量压缩

  1. #下载批量压缩脚本

wget https://raw.githubusercontent.com/helloxz/shell/master/img_compress.sh

  1. #执行shell脚本

bash img_compress.sh /data/wwwroot/imgurl

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

crontab定时执行

  1. #先将脚本赋予执行权限

  2. chmod +x img_compress.sh

  3. #添加定时任务

  4. crontab -e

  5. #将内容复制到最后并保存(每小时执行一次)

  6. */60  * * * * /yourpath/img_compress.sh /data/wwwroot/imgurl > /dev/null

  7. #重载crontab

  8. service crond reload

压缩命令:

  1. find . -iname '*.png' -print0 | xargs -0 optipng -preserve −strip all

  2. find . -iname '*.jpg' -print0 | xargs -0 jpegoptim --strip-all --preserve --totals --all-progressive

上面是遍历目录的,也可以指定目录:images_folder改成自己的

  1. find images_folder/ *.{jpeg,jpg} -exec jpegoptim {} \;

  2. find images_folder/ *.png -exec optipng {} \;

什么,命令长?命令不用记,自己写入 .bashrc  替换成简单命令就可以了,之后用 pngz , jpgz 命令就是了

  1. alias pngz='find . -iname '*.png' -print0 | xargs -0 optipng -o7 -preserve'

  2. alias jpgz='find . -iname '*.jpg' -print0 | xargs -0 jpegoptim --strip-all --preserve --totals --all-progressive'