mkscripts.sh revision 1057
116Salm#!/bin/sh - 216Salm# This script generates ed test scripts (.ed) from .t files 316Salm 416SalmPATH="/bin:/usr/bin:/usr/local/bin/:." 516SalmED=$1 616Salm[ ! -x $ED ] && { echo "$ED: cannot execute"; exit 1; } 716Salm 816Salmfor i in *.t; do 916Salm# base=${i%.*} 1016Salm# base=`echo $i | sed 's/\..*//'` 111057Salm# base=`expr $i : '\([^.]*\)'` 121057Salm# ( 131057Salm# echo "#!/bin/sh -" 141057Salm# echo "$ED - <<\EOT" 151057Salm# echo "r $base.d" 161057Salm# cat $i 171057Salm# echo "w $base.o" 181057Salm# echo EOT 191057Salm# ) >$base.ed 201057Salm# chmod +x $base.ed 211057Salm# The following is pretty ugly way of doing the above, and not appropriate 221057Salm# use of ed but the point is that it can be done... 231057Salm base=`$ED - \!"echo $i" <<-EOF 241057Salm s/\..* 251057Salm EOF` 261057Salm $ED - <<-EOF 271057Salm a 281057Salm #!/bin/sh - 291057Salm $ED - <<\EOT 301057Salm H 311057Salm r $base.d 321057Salm w $base.o 331057Salm EOT 341057Salm . 351057Salm -2r $i 361057Salm w $base.ed 371057Salm !chmod +x $base.ed 381057Salm EOF 3916Salmdone 4016Salm 4116Salmfor i in *.err; do 4216Salm# base=${i%.*} 4316Salm# base=`echo $i | sed 's/\..*//'` 441057Salm# base=`expr $i : '\([^.]*\)'` 451057Salm# ( 461057Salm# echo "#!/bin/sh -" 471057Salm# echo "$ED - <<\EOT" 481057Salm# echo H 491057Salm# echo "r $base.err" 501057Salm# cat $i 511057Salm# echo "w $base.o" 521057Salm# echo EOT 531057Salm# ) >$base-err.ed 541057Salm# chmod +x $base-err.ed 551057Salm# The following is pretty ugly way of doing the above, and not appropriate 561057Salm# use of ed but the point is that it can be done... 571057Salm base=`$ED - \!"echo $i" <<-EOF 581057Salm s/\..* 591057Salm EOF` 601057Salm $ED - <<-EOF 611057Salm a 621057Salm #!/bin/sh - 631057Salm $ED - <<\EOT 641057Salm H 651057Salm r $base.err 661057Salm w $base.o 671057Salm EOT 681057Salm . 691057Salm -2r $i 701057Salm w ${base}.red 711057Salm !chmod +x ${base}.red 721057Salm EOF 7316Salmdone 74