●画像の大きさが長辺1000px以下の画像をsmall ディレクトリに移動する。
requires ImageMagick
単一画像の場合: filter_image.sh <画像ファイル>
一括処理の場合: find <画像ディレクトリ> -type d -name small -prune -o -type f -name “*.jpg” -exec filter_image.sh {} \;
#!/bin/sh if [ -z $1 ] ; then exit 1 fi wh=`identify $1 | sed -r 's/^.* ([0-9]+)x([0-9]+) .*$/\1 \2/'` width=`echo $wh | sed -r 's/^([0-9]+) ([0-9]+)$/\1/'` height=`echo $wh | sed -r 's/^([0-9]+) ([0-9]+)$/\2/'` smalldir=`dirname $1`/small if [ $width -gt $height ] ; then comp=$width else comp=$height fi if [ $comp -lt 1000 ] ; then if [ ! -d $smalldir ] ; then mkdir $smalldir fi mv $1 $smalldir/ fi exit 0