shell中continue和break区别

    break 命令可以带一个参数,一个不带参数的break 循环只能退出最内层的循环,而break N可以退出N 层循环。

continue 命令也可以带一个参数,一个不带参数的continue 命令只去掉本次循环的剩余代码,而continue N 将会把N 层循环剩余的代码都去掉,但是循环的次数不变。

  1. #!/bin/sh  
  2. for i in "a b c d" 
  3.  do   
  4. echo "$i "
  5.  for j in `seq 10`  
  6.     do  
  7.       if [ $j -eq 5 ];then 
  8.         break  
  9.       fi  
  10.       echo "$j "
  11.     done
  12. echo  
  13.  done  

break结果:
a 1 2 3 4 
b 1 2 3 4 
c 1 2 3 4 
d 1 2 3 4 
break 2的结果:
a 1 2 3 4 
continue结果:
a 1 2 3 4 6 7 8 9 10 
b 1 2 3 4 6 7 8 9 10 
c 1 2 3 4 6 7 8 9 10 
d 1 2 3 4 6 7 8 9 10
continue 2的结果:
a 1 2 3 4 
b 1 2 3 4 
c 1 2 3 4 
d 1 2 3 4