shell中continue和break區別

轉自 :http://blog.163.com/laser_meng@126/blog/static/16972784420115203501961/ shell


break 命令能夠帶一個參數,一個不帶參數的break 循環只能退出最內層的循環,而break N能夠退出N 層循環。
continue 命令也能夠帶一個參數,一個不帶參數的continue 命令只去掉本次循環的剩餘代碼,而continue N 將會把N 層循環剩餘的代碼都去掉,可是循環的次數不變。 code

#!/bin/sh  

for i in a b c d

do

        echo

        echo -n "$i "

        for j in `seq 10`

        do

                if [ $j == 5 ]; then

                #       break

                #       break 2

                #       continue

                        continue 2

                fi

        echo -n "$j "

        done

        echo

done

echo

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  blog


=========================================================== get

break 直接結束本層循環 class

continue 忽略continue之下的代碼,直接進行下一次循環 循環

相關文章
相關標籤/搜索