目的:將某一目錄下所有大於2M的圖片縮小50%
方法:find -size +2048k -exec convert {} -resize 50% {} \;
解釋:
find -size +2048k #查找當前目錄及其子目錄下所有大於2M的文件
-exec convert {} -resize P {} #將查找到的文件使用convert命令縮小為原來圖片大小的50%,其中第一個{}表示find命令查找到的文件,第二個{}表示resize以後的文件名。這裡resize以後的文件名與原來的文件名一樣,也就是說resize以後的文件覆蓋原來的文件。關於convert命令可以參考下面的如何使用ImageMagick改變圖片大小。
\; #表示命令結束。
如何使用ImageMagick改變圖片大小
用ImageMagick吧, 假如當前目錄放的就是所有這些圖片
1. 保持長寬比例,高度都變為256:
for jpgfile in `ls` ; do convert $jpgfile -resize x256 new_$jpgfile ; done
2. 長寬都放縮為原來的50%
for jpgfile in `ls` ; do convert $jpgfile -resize %50 new_$jpgfile ; done