Liunx(Centos)使用 jpegoptim和optipng無損jpg和png圖片壓縮:ide
yum install jpegoptim optipng find -name '*.jpg' | xargs jpegoptim --strip-all --all-progressive -o -f --max=50% find -name '*.png' | xargs optipng
這兩種直接壓縮圖片不會失真!code
CentOS 使用ImageMagic下的convert圖片壓縮,減小磁盤空間:圖片
yum install ImageMagick -y find ./ -regex '.*\(jpg\|JPG\|png\|jpeg\)' -size +200k -exec convert -resize 700x -quality 75 {} {} \;
下面的兩個腳本,分別對圖片進行批量格式以及壓縮操做:ip
圖片格式轉換,這裏的示例是將[bB][mM]pP格式的文件,轉換爲佔空間小的jpg文件rem
#!/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
圖片壓縮腳本:get
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