1 1.1 cgd #!/bin/sh - 2 1.9 cgd # $NetBSD: mkscripts.sh,v 1.9 1995/03/21 09:05:27 cgd Exp $ 3 1.1 cgd # This script generates ed test scripts (.ed) from .t files 4 1.1 cgd 5 1.1 cgd PATH="/bin:/usr/bin:/usr/local/bin/:." 6 1.6 alm ED=$1 7 1.6 alm [ ! -x $ED ] && { echo "$ED: cannot execute"; exit 1; } 8 1.1 cgd 9 1.1 cgd for i in *.t; do 10 1.1 cgd # base=${i%.*} 11 1.4 alm # base=`echo $i | sed 's/\..*//'` 12 1.8 alm # base=`expr $i : '\([^.]*\)'` 13 1.8 alm # ( 14 1.8 alm # echo "#!/bin/sh -" 15 1.8 alm # echo "$ED - <<\EOT" 16 1.8 alm # echo "r $base.d" 17 1.8 alm # cat $i 18 1.8 alm # echo "w $base.o" 19 1.8 alm # echo EOT 20 1.8 alm # ) >$base.ed 21 1.8 alm # chmod +x $base.ed 22 1.8 alm # The following is pretty ugly way of doing the above, and not appropriate 23 1.8 alm # use of ed but the point is that it can be done... 24 1.8 alm base=`$ED - \!"echo $i" <<-EOF 25 1.8 alm s/\..* 26 1.8 alm EOF` 27 1.8 alm $ED - <<-EOF 28 1.8 alm a 29 1.8 alm #!/bin/sh - 30 1.8 alm $ED - <<\EOT 31 1.8 alm H 32 1.8 alm r $base.d 33 1.8 alm w $base.o 34 1.8 alm EOT 35 1.8 alm . 36 1.8 alm -2r $i 37 1.8 alm w $base.ed 38 1.8 alm !chmod +x $base.ed 39 1.8 alm EOF 40 1.2 cgd done 41 1.2 cgd 42 1.2 cgd for i in *.err; do 43 1.2 cgd # base=${i%.*} 44 1.5 alm # base=`echo $i | sed 's/\..*//'` 45 1.8 alm # base=`expr $i : '\([^.]*\)'` 46 1.8 alm # ( 47 1.8 alm # echo "#!/bin/sh -" 48 1.8 alm # echo "$ED - <<\EOT" 49 1.8 alm # echo H 50 1.8 alm # echo "r $base.err" 51 1.8 alm # cat $i 52 1.8 alm # echo "w $base.o" 53 1.8 alm # echo EOT 54 1.8 alm # ) >$base-err.ed 55 1.8 alm # chmod +x $base-err.ed 56 1.8 alm # The following is pretty ugly way of doing the above, and not appropriate 57 1.8 alm # use of ed but the point is that it can be done... 58 1.8 alm base=`$ED - \!"echo $i" <<-EOF 59 1.8 alm s/\..* 60 1.8 alm EOF` 61 1.8 alm $ED - <<-EOF 62 1.8 alm a 63 1.8 alm #!/bin/sh - 64 1.8 alm $ED - <<\EOT 65 1.8 alm H 66 1.8 alm r $base.err 67 1.8 alm w $base.o 68 1.8 alm EOT 69 1.8 alm . 70 1.8 alm -2r $i 71 1.8 alm w ${base}.red 72 1.8 alm !chmod +x ${base}.red 73 1.8 alm EOF 74 1.1 cgd done 75