#!/bin/sh #$Id: replid,v 1.2 1999/11/06 21:23:19 bittner Exp $ # Initially coding Jiri Bittner if [ $# -lt 3 ]; then echo "Usage: replid strA strB file_list $1 $2"; fi STR1=$1 STR2=$2 shift shift FILES=`grep -l $STR1 $*` echo $FILES SEPARATORS='[^a-zA-Z0-9_\.]' BACKUPDIR="Backup" if [ ! -d $BACKUPDIR ]; then mkdir $BACKUPDIR; fi for FILE in $FILES; do echo "Replacing in $FILE" cp $FILE $BACKUPDIR/$FILE CMD='-e s/\('$SEPARATORS'\)'$STR1'\('$SEPARATORS'\)/\1'$STR2'\2/g -e s/^'$STR1'\('$SEPARATORS'\)/'$STR2'\1/g -e s/\('$SEPARATORS'\)'$STR1'$/\1'$STR2'/g -e s/^'$STR1'$/'$STR2'/g' # echo $CMD sed $CMD < $BACKUPDIR/$FILE > $FILE.tmp mv $FILE.tmp $FILE done