主頁(yè) > 知識(shí)庫(kù) > Linux系統(tǒng)下批量壓縮圖片尺寸大小的方法

Linux系統(tǒng)下批量壓縮圖片尺寸大小的方法

熱門標(biāo)簽:地圖標(biāo)注的牌子 地址高德地圖標(biāo)注 桂林市ai電銷機(jī)器人公司 外呼系統(tǒng)鏈接 外呼系統(tǒng)怎么弄 制作地圖標(biāo)注 商店地圖標(biāo)注外賣入駐 磁力導(dǎo)航地圖標(biāo)注 新科火車站地圖標(biāo)注點(diǎn)
現(xiàn)在手機(jī)用戶非常龐大,針對(duì)手機(jī)用戶的流量不得不考慮,但手機(jī)網(wǎng)絡(luò)帶寬較小,怎么將互聯(lián)網(wǎng)上的圖片壓縮是個(gè)難題,在windows上容易,有很多軟件,但在linux上有沒(méi)有辦法呢?
經(jīng)過(guò)多次的尋找,還是找到了些方法,這里分享下:

一個(gè)比較好用命令行下可以使用的 強(qiáng)大的免費(fèi)圖片工具 ImageMagick

Centos系統(tǒng)的安裝使用方法:
yum install ImageMagick

再輸入y確認(rèn)即可安裝完成

接下來(lái)調(diào)用 系統(tǒng)命令

復(fù)制代碼
代碼如下:

#include stdio.h>
int main()
{
printf(“Please install ImageMagick before run this programme ,else it will not run correctlyn”);
system(“mkdir small”);
system(“cp *.jpg ./small”);
system(“find ./small -name ‘*.jpg’ -exec convert -resize 300×300 {} {} \;”);
system(“pwd”);
system(“rename .jpg _small.jpg small/*.jpg”);
printf(“nConvert pictures finished,plesae check itn”);
return 0;
}

其中上面 convert 中的 resize 參數(shù)可以修改imagemagick,它可以對(duì)圖片進(jìn)行格式轉(zhuǎn)換、大小壓縮、增加水印等操作,而不需要去寫第三方的程序,只需要寫簡(jiǎn)單的SHELL腳本就可以完成圖片壓縮操作,接下來(lái)UBUNTU上介紹下:
安裝命令:
sudo apt-get install imagemagick

其它linux有對(duì)應(yīng)的軟件安裝命令,以下有我寫的兩個(gè)腳本,分別對(duì)圖片進(jìn)行批量格式以及壓縮操作:

圖片格式轉(zhuǎn)換,這里的示例是將[bB][mM][pP](所有BMP文件)格式的文件,轉(zhuǎn)換為占空間小的jpg文件:

復(fù)制代碼
代碼如下:

#!/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

圖片壓縮腳本:

復(fù)制代碼
代碼如下:

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

標(biāo)簽:仙桃 衡陽(yáng) 湘西 衡陽(yáng) 慶陽(yáng) 三門峽 六盤水 茂名

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux系統(tǒng)下批量壓縮圖片尺寸大小的方法》,本文關(guān)鍵詞  Linux,系統(tǒng),下,批量,壓縮,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux系統(tǒng)下批量壓縮圖片尺寸大小的方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Linux系統(tǒng)下批量壓縮圖片尺寸大小的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章