| This is a quick&dirty script that pushes pictures onto my web server, does some sensible resizing, and fixes up some igal stupidities on the way. |
|
#!/bin/bash # settings LOCALBASEDIR=`echo "/home/user/photo"` REMOTEBASEDIR=`echo "/home/apache/user/photos"` HTMLBASE=`echo "http://www.user.invalid/photos"` REMOTEHOST=`echo "www.user.invalid"` QUALITY=`echo "60"` CWD=`pwd` echo -n "Input directory name: " read DIRNAME DIR=`echo "$LOCALBASEDIR/$DIRNAME"` echo "Directory set to $DIR" if [ -d "$DIR" ]; then echo "$DIR already exists. Exiting." exit `/bin/false` fi echo "$DIR does not exist. Attempting to create it..." mkdir "$DIR" || exit `/bin/false` cd "$DIR" || exit `/bin/false` echo "$DIR created and cwd now" gphoto2 -P && gphoto2 -D for i in `ls -1 *.JPG`; do echo -n "downsizing $i.." BASE=`echo "$i" | sed s/"\.JPG"//g` convert -quality "$QUALITY" "$i" "$BASE.jpg" mv "$i" "$i.foo" echo "done." done echo " " echo "running igal.." igal -e jpg -as echo " " echo -n "fixing html-files.." for i in `ls -1 *.html`; do cat "$i" | sed s/"width\=\ "//g | sed s/"height\=\ "//g >"$i.new" mv "$i.new" "$i" done echo "done." set -e DIRNAME=`pwd | sed s/".*\/"//g` ssh -x "$REMOTEHOST" mkdir "$REMOTEBASEDIR/$DIRNAME" scp *html .i* .s* .t* *.jpg "$REMOTEHOST:$REMOTEBASEDIR/$DIRNAME" echo -n "cleaning up.." rm *.jpg *.html .i* .s* .t* for i in `ls -1 *.foo`; do NAME=`echo "$i" | sed s/"\.foo"//g` mv "$i" "$NAME" done echo "..done." cd "$CWD" echo " " echo "copy/paste URL: $HTMLBASE/$DIRNAME/index.html" echo " " exit `/bin/true`