File:  [Repository] / foxridge-archiver / unarchivemany.sh
Revision 1.5: download - view: text, annotated - select for diffs - revision graph
Fri Jun 23 09:49:06 2006 UTC (18 years ago) by casties
Branches: MAIN
CVS tags: HEAD
while read loop works now!

    1: #!/bin/bash
    2: 
    3: VERSION="unarchivemany V0.2 (23.6.2006 ROC)"
    4: 
    5: if [ -z "$1$2" ]
    6: then
    7:     echo $VERSION
    8:     echo "use: $0 docdir dirlist"
    9:     echo "  Unarchives the directories given in the file dirlist inside docdir."
   10:     exit 1
   11: fi
   12: 
   13: BASEDIR="$1"
   14: DIRLIST="$2"
   15: 
   16: if [ ! -d $BASEDIR ]
   17: then
   18:     echo "ERROR: base directory $BASEDIR not found!"
   19:     exit 1
   20: fi
   21: 
   22: if [ ! -f $DIRLIST ]
   23: then
   24:     echo "ERROR: directory list file $DIRLIST not found!"
   25:     exit 1
   26: fi
   27: 
   28: CNT=0
   29: 
   30: # read directories from DIRLIST
   31: while read DIR
   32: do
   33:     CNT=$(( $CNT + 1 ))
   34:     if [ -d "$BASEDIR/$DIR" ]
   35:     then
   36: 	echo "$CNT: unarchiving $DIR..."
   37: 	if /usr/local/mpiwg/archive/unarchiver "$BASEDIR/$DIR"
   38: 	then
   39: 	    echo "  done on `date`"
   40: 	else
   41: 	    echo "FAILED!"
   42: 	    # abort?
   43: 	fi
   44:     else
   45: 	echo "$CNT: ERROR: document directory $BASEDIR/$DIR not found!"
   46:     fi
   47: done < $DIRLIST
   48: 
   49: if [ $CNT = 0 ]
   50: then
   51:     echo "$CNT ERROR: the list file $DIRLIST seems to be empty!"
   52: fi

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>