一、for循环

for循环的格式为:

 
  
  1. for 变量名 in 列表 
  2. do 
  3.     命令1 
  4.     命令2 
  5. done 

当变量值在列表里,for循环即执行一次所有命令,使用变量名访问列表中取值。命令可为任何有效的shel命令和语句。变量名为任何单词。in列表用法是可选的,如果不用它,for循环使用命令行的位置参数。in列表可以包含替换、字符串和文件名。

Eg

 

 
  
  1. #!/bin/bash 
  2.  
  3. for loop in 1 2 3 4 5//要注意in后面的列表,列表中的内容不能加双引号(eg.”1 2 3 4 //5”),如果加了输出的结果将会打在一行上,不加是5个元素,加//上是一个元素 
  4.  
  5. do 
  6.  
  7. echo $loop 
  8.  
  9. done 

二、until循环

until循环格式:

 
  
  1. until 条件 
  2. do 
  3.       命令1 
  4.       命令2 
  5.       ... 
  6. done 

注:条件可为任意测试条件,测试发生在循环末尾,因此循环至少执行一次。

三、while循环

While循环格式:

 
  
  1. while 命令 
  2. do  
  3.    命令1 
  4.    命令2 
  5.    ... 
  6. done 

Eg:

 
  
  1. #!/bin/bash 
  2. while : 
  3. do 
  4. echo -n "Enter any number[1...5]:" 
  5. read ans 
  6. case $ans in 
  7. 1|2|3|4|5) 
  8. echo "You enter a number between 1 and 5." 
  9. ;; 
  10. *) 
  11. echo -n "Wrong number,continue(y/n)?:" 
  12. read IS_CONTINUE 
  13. case $IS_CONTINUE in 
  14. y|yes|Y|Yes) 
  15. continue 
  16. ;; 
  17. *) 
  18. break 
  19. ;; 
  20. esac 
  21. esac 
  22. done