#!/bin/sh :>INITIALIZE;:>LIST;:>PRINT;:>SEDFILE SEDVAR="" LINE=0 sed 's/\([^a-zA-Z\n\t 0-9]\)/ _SCHAR\1 /g' | \ while N=`line` do LINE=`expr $LINE + 1` AWORD=0 for i in $N do AWORD=`expr $AWORD + 1` SEDVAR=`echo $i | sed 's/_SCHAR/S/'` if [ "$SEDVAR" = "$i" ] then echo "WT$i=\"$i\"" >> INITIALIZE echo "WL$i=\"\$WL$i $LINE.$AWORD\"" >> LIST echo "echo \"\$WT$i \$WL$i\"" >> PRINT else echo -n "$LINE.$AWORD " >>"$SEDVAR" echo "$SEDVAR" >> SEDFILE fi SEDVAR="" done done ( cat INITIALIZE LIST PRINT | sh cat SEDFILE | sort -u | \ while N=`line` do THELINE=`cat "$N"` M=`echo "$N" | sed 's/S//'` echo "$M $THELINE" rm "$N" done ) | sort -u rm INITIALIZE LIST PRINT SEDFILE