15.3 until循环

15.3.1 until循环的语法

until循环也是运行前测试,但是until采用的是测试假值的方式,当测试结果为假时才继续执行循环体,直到测试为真时才停止循环。其语法如下:


  1. until expression

  2. do

  3. command

  4. done


下面的示例使用until同时计算1到100的和以及1到100的奇数和。


  1. [root@localhost ~]# cat until01.sh

  2. #!/bin/bash

  3. sum01=0

  4. sum02=0

  5. i=1

  6. until [[ $i -gt 100 ]]

  7. do

  8. let "sum01+=i"

  9. let "j=i%2"

  10. if [[ $j -ne 0 ]]; then

  11. let "sum02+=i"

  12. fi

  13. let "i+=1"

  14. done

  15. echo $sum01

  16. echo $sum02

  17. #

  18. 运行结果

  19. [root@localhost ~]# bash until01.sh

  20. 5050

  21. 2500