歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu中批量壓縮jpg圖像的大小

Ubuntu中批量壓縮jpg圖像的大小

日期:2017/2/28 16:38:02   编辑:Linux教程

某系統中用戶可以上傳頭像,可是某些用戶實在是不知大小,居然把生活照都傳上來了,只好想辦法給它壓縮一下。

幸好Linux下有ImageMagick這樣的大牛,在Ubuntu下只需apt-get install imagemagick即可。

一般的jpg圖像120*120大小的大概是50k左右,由於不知道用戶上傳的圖像的大小和比例,所以把壓縮門檻設為100k。不管用戶上傳的圖片有多大,只要大於100k,就給它壓縮50%。經過若干輪的壓縮,就會得到理想的120*120左右的圖片,這有點遞歸的意思。

根據這個思路,寫一個腳本resize.sh如下:

#!/bin/bash
echo "resize image who is bigger than 100k";
for i in `find . -size +100k`;
do
convert $i -resize 50% $i;
echo "resize image $i to 50%";
done

$ chmod +x resize.sh

$ ./resize.sh
resize image who is bigger than 100k
resize image ./2010-01-13/e0110c4b-97bf-4ef6-808a-9d8f844bf950.JPG to 50%
resize image ./2010-03-16/e9b75d65-a122-4a77-b409-4b0f0e0851d7.jpg to 50%
resize image ./2010-03-23/24c7e4f5-90a2-4052-8429-d1a13d77a127.jpg to 50%
resize image ./2010-01-12/992132d1-f630-4e50-809e-41ef836305e7.jpg to 50%
resize image ./2010-03-31/2e217345-c04c-4c52-90a6-566167c58c07.JPG to 50%
resize image ./2010-03-31/59bb335d-00b6-4bda-9b1a-6cede53d8d6a.JPG to 50%

$ ./resize.sh
resize image who is bigger than 100k
resize image ./2010-03-31/2e217345-c04c-4c52-90a6-566167c58c07.JPG to 50%
resize image ./2010-03-31/59bb335d-00b6-4bda-9b1a-6cede53d8d6a.JPG to 50%

Copyright © Linux教程網 All Rights Reserved