在图片目录下执行:(x.JPG 到 x-small.jpg) for img in *.JPG; do ./resize-tok $img ; done
云想前:
du *JPG
4728 DSC_8535.JPG
4896 DSC_8538.JPG
4544 DSC_8540.JPG
572 DSC_8543.JPG
556 DSC_8544.JPG 下面是运行后:
du *jpg
372 DSC_8535.JPG_small.jpg
376 DSC_8538.JPG_small.jpg
376 DSC_8540.JPG_small.jpg
380 DSC_8543.JPG_small.jpg
376 DSC_8544.JPG_small.jpg
392 DSC_8546.JPG_small.jpg
脚本resize-tok内容:(要求安装ImageMagick) -------------------以下为脚本-----------------------
#!/bin/sh
# $1: file name; $2:size in k fsize(){ x=$(du --block-size k $1)
echo $x | awk '{print $1}' | sed "s/K//g" } #echo $(fsize $1)k rat=$(echo $(fsize $1) | awk '{print sqrt(400/($1))*100 }')
#echo $rat
while [ 1 ]
do
convert -resize $rat%x$rat% $1 $1_small.jpg if [ $(fsize $1_small.jpg) -lt 400 ]
then
echo "."
fsize $1_small.jpg
exit
fi #du x.jpg
rat=$(echo $rat | awk '{print ($1-4) }')
#echo $rat
done
猜您喜欢
推荐内容
开源项目推荐 更多
热门活动
热门器件
用户搜过
随便看看
热门下载
热门文章
评论