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