Linux 圖片批量壓縮工具 ImageMagick

    最近做了一個遊戲展示的界面,80多個遊戲和它們的url,圖標,上傳服務器以後發現圖標都較大,在客戶端可以使用很多在線免費的壓縮工具(美圖秀秀),但是服務器一條命令就可以解決的問題,沒必要去手動添加圖片。

  • 下載ImageMagick

系統:CentOS

cmd:yum install ImageMagick -y

  • 使用

  通過正則查找當前目錄下所有大於 50k 的圖片,進行等比例50%的縮放;

find ./ -regex '.*\(jpg\|JPG\|png\|PNG\|jpeg\)' -size +50k -exec convert -resize 50%x50% {} {} \;

  通過正則查找當前目錄下所有大於 50k 的圖片,進行像素大小控制,convert 是會自動按照最大尺寸等比例進行縮小的;

find ./ -regex '.*\(jpg\|JPG\|png\|PNG\|jpeg\)' -size +50k -exec convert -resize 100x100 {} {} \;

  如果想降低圖片的質量,可以用 convert 的 -quality 參數,質量值爲 0-100 之間的數值,數字越大,質量越好,一般指定 70-80 ,基本上看不出前後的差別 

convert -resize 500x500 -quality 75 xxx.jpg xxx.png 

通過 crontab 進行定時圖片壓縮

舉例:對 /www/images/ 文件夾下的所有圖片每 5 分鐘進行一次圖片壓縮處理;

在 /www/images/ 下新建 convert.sh 腳本,內容:

find /www/images/ -regex '.*\(jpg\|JPG\|png\|PNG\|jpeg\)' -size +50k -exec convert -resize 50%x50% {} {} \;

通過 crontab -e 在文件後添加:

*/5 * * * * /www/images/convert.sh

 -EOF-

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章