until [ condition ] do 程式段落 done
[dywang@dywmac zzz]$ cat sh13-1.sh #!/bin/bash rnum=$((RANDOM%10)) num="-10" count=0 until [ "$rnum" -eq "$num" ]; do read -p "請輸入一個 0 到 9 的數字: " -t 5 num ((count++)) done echo "你答對了,隨機數字 $num,你猜了 $count 次。"
[dywang@dywmac zzz]$ sh sh13-1.sh 請輸入一個 0 到 9 的數字: 4 請輸入一個 0 到 9 的數字: 6 請輸入一個 0 到 9 的數字: 5 你答對了,隨機數字 5,你猜了 3 次。 [dywang@dywmac zzz]$ [dywang@dywmac zzz]$ sh sh13-1.sh 請輸入一個 0 到 9 的數字: 1 請輸入一個 0 到 9 的數字: 2 請輸入一個 0 到 9 的數字: 3 請輸入一個 0 到 9 的數字: 4 請輸入一個 0 到 9 的數字: 5 請輸入一個 0 到 9 的數字: 6 你答對了,隨機數字 6,你猜了 6 次。
[dywang@dywmac zzz]$ cat sh14-1.sh #!/bin/bash [ -z "$1" ] && echo "Usage: $0 <datafile>" && exit 1 ! test -f "$1" && echo "Input file not found" && exit 2 until ! IFS=',' read -r f1 f2 f3 f4 f5; do [ "$f1" == "no." ] && echo -e "name\tavg." && continue avg=$(((f3+f4)/2)) echo -e "$f2\t$avg" done < $1
[dywang@dywmac zzz]$ sh sh14-1.sh Usage: sh14-1.sh <datafile> [dywang@dywmac zzz]$ sh sh14-1.sh sdata.csv name avg. dywang 46 linda 74 peter 83 rita 49 cora 45