From: Earnie B. <ea...@us...> - 2006-08-11 16:29:56
|
Update of /cvsroot/mingw/msys/packages/bash/3.1/tests/misc In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22629/3.1/tests/misc Added Files: dev-tcp.tests perf-script perftest read-nchars.tests redir-t2.sh run-r2.sh sigint-1.sh sigint-2.sh sigint-3.sh sigint-4.sh test-minus-e.1 test-minus-e.2 wait-bg.tests Log Message: Adding bash version 3.1 --- NEW FILE: perf-script --- #!/bin/bash typeset -i m2 m1 M n2 n1 N m n typeset -i MM=5 NN=5 case $# in 0) : ;; 1) MM=$1; NN=$1 ;; 2) MM=$1; NN=$2 ;; *) echo 1>&2 "Usage: $0 [m [n]]" ;; esac EMPTYLINE=: # echo echo 'a = { ' # mathematica let "M=1" # for (M=1; M<=MM; M++) while let "M <= MM"; do let "N=1" # for (N=1; N<=NN; N++) while let "N <= NN"; do let "m1 = M - 1" let "m2 = M + 1" let "n1 = N - 1" let "n2 = N + 1" echo -n '{ ' # math let "m=1" # for(m=1; m<=MM; m++) while let "m <= MM"; do let "n=1" # for(n=1; n<=NN; n++) while let "n <= NN"; do let "x = (m-m1)*(m-M)*(m-m2)" let "y = (n-n1)*(n-N)*(n-n2)" if let "(x*x + (n-N)*(n-N)) * ((m-M)*(m-M) + y*y)"; then echo -n "0," else # neighbour echo -n "1," fi let "n=n+1" done echo -n " "; let "m=m+1" # ". " done echo '},' let "N=N+1" $EMPTYLINE done $EMPTYLINE let "M=M+1" done echo '}' echo -n 'o = { ' let "m=1" while let "m <= MM"; do let "n=1" while let "n <= NN"; do echo -n "1," let "n=n+1" done let "m=m+1" done echo " }" echo 'x = LinearSolve[a,o] ' exit 0 --- NEW FILE: redir-t2.sh --- read line1 echo read line 1 \"$line1\" exec 4<&0 exec 0</dev/tty read line2 echo line read from tty = \"$line2\" exec 0<&4 read line3 echo read line 3 \"$line3\" --- NEW FILE: sigint-4.sh --- trap 'echo sigint' 2 sleep 5 & sleep 5 & sleep 5 & echo wait 1 wait echo wait 2 wait exit --- NEW FILE: perftest --- # originally from Mike Haertel foo() { case $1 in a*) ;; *) ;; esac ;} bar() { case $1 in [abc]*) ;; *);; esac ;} baz() { case $1 in xyzzy) ;; *) ;; esac ;} for x in /usr/lib/*/* do foo $x bar $x baz $x done --- NEW FILE: dev-tcp.tests --- exec 9<>/dev/tcp/129.22.8.162/25 read banner <&9 echo "$banner" echo quit >&9 read msg <&9 echo "$msg" exec 9<&- # nifty date command that queries the date/time server cat < /dev/tcp/129.22.8.102/13 exit 0 --- NEW FILE: sigint-3.sh --- sleep 5 & sleep 5 & sleep 5 & echo wait 1 wait echo wait 2 wait exit --- NEW FILE: read-nchars.tests --- # interactive # from tty read -n 3 -p 'enter three chars: ' xyz echo echo $xyz # using readline read -p 'enter 3 chars: ' -e -n 3 abc # readline outputs a newline for us, so we don't need the extra echo echo $abc --- NEW FILE: sigint-1.sh --- echo before trap trap 'echo caught sigint' 2 echo after trap for i in 1 2 3 do echo $i sleep 5 done --- NEW FILE: run-r2.sh --- ../../bash ./redir-t2.sh < /etc/passwd --- NEW FILE: sigint-2.sh --- echo before loop for i in 1 2 3 do echo $i sleep 5 done --- NEW FILE: test-minus-e.1 --- touch .file while set -e ; test -r .file ; do echo -n "stop loop? " read reply case "$reply" in y*) rm .file non-dash-file ;; esac set +e done --- NEW FILE: wait-bg.tests --- #! /bin/bash i=0 while [ $i -lt $1 ] do /bin/sh -c "sleep 4; exit 0" & rv=$? pid=$! eval bg_pid_$i=$pid echo $$: Job $i: pid is $pid rv=$rv i=$((i + 1)) done i=0 while [ $i -lt $1 ] do eval wpid=\$bg_pid_$i echo Waiting for job $i '('pid $wpid')' wait $wpid rv=$? echo Return value is $rv i=$((i + 1)) done --- NEW FILE: test-minus-e.2 --- touch .file set -e while set +e ; test -r .file ; do echo -n "stop loop? [yes to quit] " read reply if [ "$reply" = yes ] ; then rm .file non-dash-file fi set -e done rm -f .file |