File:  [Repository] / foxridge-archiver / changemany.sh
Revision 1.1: download - view: text, annotated - select for diffs - revision graph
Thu Jun 29 07:38:52 2006 UTC (17 years, 11 months ago) by casties
Branches: MAIN
CVS tags: HEAD
first working version

#!/bin/bash

VERSION="changemany V0.1 (29.6.2006 ROC)"

#set -x

if [ -z "$1$2" ]
then
    echo $VERSION
    echo "use: $0 dirlist [params...]"
    echo "  Changes the document directories given in the file dirlist."
    echo "  The list has the full pathname first and then one column per parameter, separated with spaces."
    exit 1
fi

DIRLIST="$1"
PARAM1="$2"
PARAM2="$3"
PARAM3="$4"

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

CNT=0

# read directories and options from DIRLIST
while read DIR OPT1 OPT2 OPT3
do
    CNT=$(( $CNT + 1 ))
    if [ -d "$DIR" ]
    then
	echo "changing document $CNT: $DIR..."
	if /usr/local/mpiwg/archive/changemeta "${PARAM1:+$PARAM1=$OPT1}" "${PARAM2:+$PARAM2=$OPT2}" "${PARAM3:+$PARAM3=$OPT3}" "$DIR"
	then
	    echo "  OK"
	else
	    echo "FAILED!"
	    # abort?
	fi
    else
	echo "$CNT ERROR: document directory $DIR not found!"
    fi
done < $DIRLIST

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

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