#!/bin/bash # Copyright (c) Rik Snel 2007, license GPL v3 or any later version PROGNAME=`basename $0` || exit 1 QUIET=0 DEBUG=0 NOORDHOFF=$HOME/noordhoff function debug { if [ "$DEBUG" = "1" ]; then echo "${PROGNAME}:debug:$1" 1>&2; fi } function warning { if [ "$QUIET" = "0" ]; then echo "${PROGNAME}:warning:$1" 1>&2; fi } function usage { echo "Usage: ${PROGNAME} DEVICE" exit } while [ "$1" != "" ]; do case $1 in -D | --debug ) shift DEBUG=1 ;; -q | --quiet ) shift QUIET=1 ;; -h | --help ) shift usage ;; * ) break; ;; esac done TMPDIR= function cleanup { debug "cleanup called, arg=$1" trap - EXIT HUP INT TERM ERR if [ "$TMPDIR" != "" -a -d "$TMPDIR" ]; then debug "removing $TMPDIR" rm -f -r $TMPDIR fi exit $1 } function fatal { echo "${PROGNAME}:${1:-"unknown error"}" 1>&2 cleanup 1 } function sig_handler_HUPINTTERM { fatal "cought HUP, INT or TERM signal, exiting" } function sig_handler_ERR { cleanup 1 } function sig_handler_EXIT { cleanup 0 } trap sig_handler_HUPINTTERM HUP INT TERM trap sig_handler_ERR ERR trap sig_handler_EXIT EXIT TMPDIR=`mktemp -d -p /tmp .$PROGNAME.XXXXXX` if [ "$#" != "2" ]; then fatal "precisely one image must be specified, root and name" fi if [ ! -d $NOORDHOFF ]; then fatal "director $NOORDHOFF does not exist" fi if [ -d $NOORDHOFF/$2 ]; then fatal "directory $2 already exists in $NOORDHOFF" fi mkdir $NOORDHOFF/$2 cd $NOORDHOFF/$2 if wget ${1}page-001.png || wget ${1}page-001.jpg; then SEQ=`seq -f "%03.0f" 2 999` for i in $SEQ; do if wget ${1}page-$i.png || wget ${1}page-$i.jpg; then echo ok else exit fi done elif wget ${1}1.jpg || wget ${1}1.png; then if [ -f 1.jpg ]; then mv 1.jpg 001.jpg; fi if [ -f 1.png ]; then mv 1.jpg 001.png; fi SEQ=`seq 2 999` for i in $SEQ; do if wget ${1}$i.png || wget ${1}$i.jpg; then for a in $i.{png,jpg}; do if [ -f $a -a "$a" != `printf %03d.%s ${a%.*} ${a##*.}` ]; then mv $a `printf %03d.%s ${a%.*} ${a##*.}`; fi done echo ok else exit fi done fo fi