view unarchivemany.sh @ 35:e27d097a9d87

still issues with "while read"
author casties
date Fri, 23 Jun 2006 11:40:12 +0200
parents 51d136834761
children 9eb746dc69f8
line wrap: on
line source

#!/bin/bash

VERSION="unarchivemany V0.2 (23.6.2006 ROC)"

if [ -z "$1$2" ]
then
    echo $VERSION
    echo "use: $0 docdir dirlist"
    echo "  Unarchives the directories given in the file dirlist inside docdir."
    exit 1
fi

BASEDIR="$1"
DIRLIST="$2"

if [ ! -d $BASEDIR ]
then
    echo "ERROR: base directory $BASEDIR not found!"
    exit 1
fi

if [ ! -f $DIRLIST ]
then
    echo "ERROR: directory list file $DIRLIST not found!"
    exit 1
fi

CNT=0

cat  $DIRLIST | while read DIR
do
    CNT=$(( $CNT + 1 ))
    if [ -d "$BASEDIR/$DIR" ]
    then
	echo "$CNT: unarchiving $DIR..."
	if /usr/local/mpiwg/archive/unarchiver "$BASEDIR/$DIR"
	then
	    echo "  done on `date`"
	else
	    echo "FAILED!"
	    # abort?
	fi
    else
	echo "$CNT: ERROR: document directory $BASEDIR/$DIR not found!"
    fi
done

#if [ $CNT = "0" ]
#then
#    echo "$CNT ERROR: the list file $DIRLIST seems to be empty!"
#fi