# The file generation code 1-9998 CODE_PATH="/usr/users/compaq/prem/proj/work/one" START=1 STOP=9998 j=$START for i in `cat prem.5` do echo $i > $j echo "Record : $j" ########################################## ## The main for loop starts from here ## ########################################## # aru7 # To get the NAME & JUNK entries START_ARU7=1 STOP_ARU7=`cat $j | wc -c | awk '{print $1}'` k=$START_ARU7 while : do cat $j | cut -c $k >> $j.1 [ $k = $STOP_ARU7 ] && { break } k=`expr $k + 1` done for l in `cat $j.1` do NUM=`echo $l | sed -n "/[0-9]/p"` if [ ! "$NUM" ] then echo $l >> $j.junk else echo $l >> $j.numall fi done # aru8 # To get the NUM & NAME entries for m in `cat $j.1` do CHAR=`echo $m | sed -n "/[A-Z]/p"` NUM=`echo $m | sed -n "/[0-9]/p"` if [ -n "$CHAR" -o "$NUM" ] then echo $m >> $j.charnum else break fi done # aru9 # To get the NUM entries - To be merged with NAME for n in `cat $j.charnum` do NUM=`echo $n | sed -n "/[0-9]/p"` if [ "$NUM" ] then echo $n | sed -n "/[0-9]/p" >> $j.validnumraw else break fi done diff $j.numall $j.validnumraw | sed "1,//d" | awk '{print $2}' > $j.prodraw /usr/bin/paste -d "" -s $j.validnumraw > $j.validnum /usr/bin/paste -d "" -s $j.prodraw > $j.prod # more aru5 # To get the NAME entries for o in `cat $j.junk` do CHAR=`echo $o | sed -n "/[A-Z\&\.\'\-]/p"` if [ -n "$CHAR" ] then echo $o | sed -n "/[A-Z\&\.\'\-]/p" >> $j.validcharraw else break fi done /usr/bin/paste -d "" -s $j.validcharraw > $j.validchar /usr/bin/pr -m -t -s $j.validnum $j.validchar $j.prod >> final /sbin/rm $CODE_PATH/$j $CODE_PATH/$j.1 $CODE_PATH/$j.junk \ $CODE_PATH/$j.numall $CODE_PATH/$j.charnum $CODE_PATH/$j.prod \ $CODE_PATH/$j.prodraw $CODE_PATH/$j.validnum $CODE_PATH/$j.validnumraw \ $CODE_PATH/$j.validchar $CODE_PATH/$j.validcharraw ###################################### [ $j = $STOP ] && { echo "Done ...." break } j=`expr $j + 1` done ########################################## ## The main for loop ends here ## ########################################## #sh aru7; sh aru8; sh aru9; sh aru5 #sh clean