mkscripts.sh revision 16
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" = X -o ! -x $ED ] && ED="../ed" 716Salm[ ! -x $ED ] && { echo "$ED: cannot execute"; exit 1; } 816Salm 916Salmfor i in *.t; do 1016Salm# base=${i%.*} 1116Salm# base=`echo $i | sed 's/\..*//'` 1216Salm base=`expr $i : '\([^.]*\)'` 1316Salm ( 1416Salm echo "#!/bin/sh -" 1516Salm echo "$ED - <<\EOT" 1616Salm echo "r \\$base.d" 1716Salm cat $i 1816Salm echo "w \\$base.o" 1916Salm echo EOT 2016Salm ) >$base.ed 2116Salm chmod +x $base.ed 2216Salm# The following is pretty ugly and not appropriate use of ed 2316Salm# but the point is that it can be done... 2416Salm# base=`$ED - \!"echo \\\\$i" <<-EOF 2516Salm# s/\..* 2616Salm# EOF` 2716Salm# $ED - <<-EOF 2816Salm# a 2916Salm# #!/bin/sh - 3016Salm# $ED - <<\EOT 3116Salm# r \\$base.d 3216Salm# w \\$base.o 3316Salm# EOT 3416Salm# . 3516Salm# -2r \\$i 3616Salm# w \\$base.ed 3716Salm# !chmod +x \\$base.ed 3816Salm# EOF 3916Salmdone 4016Salm 4116Salmfor i in *.err; do 4216Salm# base=${i%.*} 4316Salm# base=`echo $i | sed 's/\..*//'` 4416Salm base=`expr $i : '\([^.]*\)'` 4516Salm ( 4616Salm echo "#!/bin/sh -" 4716Salm echo "$ED - <<\EOT" 4816Salm echo H 4916Salm echo "r \\$base.err" 5016Salm cat $i 5116Salm echo "w \\$base.o" 5216Salm echo EOT 5316Salm ) >$base-err.ed 5416Salm chmod +x $base-err.ed 5516Salm# base=`$ED - \!"echo \\\\$i" <<-EOF 5616Salm# s/\..* 5716Salm# EOF` 5816Salm# $ED - <<-EOF 5916Salm# a 6016Salm# #!/bin/sh - 6116Salm# $ED - <<\EOT 6216Salm# H 6316Salm# r \\$base.err 6416Salm# w \\$base.o 6516Salm# EOT 6616Salm# . 6716Salm# -2r \\$i 6816Salm# w \\${base}-err.ed 6916Salm# !chmod +x ${base}-err.ed 7016Salm# EOF 7116Salmdone 72