#!/bin/bash #Move all the 1920x1200 wallpapers to the correct place #set -x # Move 1920x1200 and likened ones . /home/default LOCKFILE PROGRAMS "jhead" DIR="$HOME/Pictures/to_work_on/wpm/sorted" DIRA="$DIR/1920quasi" DIRB="$DIR/1920other" DIRC="$DIR/1.6_quasi" DIRD="$DIR/1.6_other" DIRE="$DIR/land_smal" DIRF="$DIR/land_huge" DIRG="$DIR/land_othr" DIRH="$DIR/port_smal" DIRI="$DIR/port_huge" DIRJ="$DIR/port_othr" for TEST in "$DIRA $DIRB $DIRC $DIRD $DIRE $DIRF $DIRG $DIRH $DIRI $DIRJ" do test -d $TEST || mkdir -p $TEST done for FILE in *.jpg do SIZE=`jhead $FILE|grep ^Resolution|awk '{print $3, $5}'` WIDTH=`echo $SIZE|awk '{print $1}'` HEIGHT=`echo $SIZE|awk '{print $2}'` NAME=`echo $FILE|cut -b -14` if [ "${WIDTH}x${HEIGHT}" == "1920x1200" ] then if [ "$NAME" == "quasi_unknown_" ] then echo "1920x1200 quasi : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRA/. || ERROR "Can not move on $LINENO" else echo "1920x1200 other : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRB/. || ERROR "Can not move on $LINENO" fi else RATIO=`echo "scale=2; $WIDTH/$HEIGHT"|bc` if [ "${RATIO}" == "1.60" ] then if [ "$NAME" == "quasi_unknown_" ] then echo "Something quasi : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRC/. || ERROR "Can not move on $LINENO" else echo "Something other : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRD/. || ERROR "Can not move on $LINENO" fi else if [ "$WIDTH" -gt "$HEIGHT" ] then if [ "$WIDTH" -lt "1600" ] then echo "Landscape Small : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRE/. || ERROR "Can not move on $LINENO" else if [ "$WIDTH" -gt "3200" ] then echo "Landscape Huge : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRF/. || ERROR "Can not move on $LINENO" else echo "Landscape Large : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRG/. || ERROR "Can not move on $LINENO" fi fi else if [ "$HEIGHT" -lt "900" ] then echo "Portrait Small : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRH/. || ERROR "Can not move on $LINENO" else if [ "$HEIGHT" -gt "2200" ] then echo "Portrait Huge : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRJ/. || ERROR "Can not move on $LINENO" else echo "Portrait Large : ${WIDTH}x${HEIGHT} $FILE" mv $FILE $DIRJ/. || ERROR "Can not move on $LINENO" fi fi fi fi fi done