Liunx(Centos)使用 jpegoptim和optipng无损jpg和png图片压缩:
yum install jpegoptim optipng
find -name '*.jpg' | xargs jpegoptim --strip-all --all-progressive -o -f --max=50%
find -name '*.png' | xargs optipng
这两种直接压缩图片不会失真!
CentOS 使用ImageMagic下的convert图片压缩,减少磁盘空间:
yum install ImageMagick -y
find ./ -regex '.*\(jpg\|JPG\|png\|jpeg\)' -size +200k -exec convert -resize 700x -quality 75 {} {} \;
下面的两个脚本,分别对图片进行批量格式以及压缩操作:
图片格式转换,这里的示例是将[bB][mM]pP格式的文件,转换为占空间小的jpg文件
#!/bin/sh
for img in `find ./ -name "*.[bB][mM][pP]"`; do
#change upper filename to lower
_imglower=`echo $img|tr "[:upper:]" "[:lower:]"`;
#get file's basename
_basename=`basename $_imglower .bmp`;
#get file's dir
_dirname=`dirname $img`;
#get desc filename with path
_basefullname=$_dirname"/"$_basename".jpg";
#do convert
convert $img $_basefullname;
#remove bmp file
rm $img;
echo "deal $_basefullname successfully";
done
图片压缩脚本:
for img in `find ./ -name "*.[jJ][pP][gG]"`; do
convert -resize 85%*85% $img $img-resized;
rm $img;
mv $img-resized $img
echo $img
done
for img in `find ./ -name "*.[pP][nN][gG]"`; do
convert -resize 85%*85% $img $img-resized;
rm $img;
mv $img-resized $img
echo $img
done
for img in `find ./ -name "*.[gG][iI][fF]"`; do
convert -resize 85%*85% $img $img-resized;
rm $img;
mv $img-resized $img
echo $img
done
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。