天天看點

跳出外部循環

有時你在内部循環,但需要停止外部循環。break指令接受單個指令行參數值:

break n
           

其中n指定了要跳出的循環層級。預設情況下,n為1,表明跳出的是目前的循環。如果将n設為2,break指令就會停止下一級的外部循環。

$ cat test20 
#!/bin/bash 
# breaking out of an outer loop 
for (( a = 1; a < 4; a++ )) 
do 
 echo "Outer loop: $a" 
 for (( b = 1; b < 100; b++ )) 
 do 
 if [ $b -gt 4 ] 
 then 
 break 2 
 fi 
 echo " Inner loop: $b" 
 done 
done 
$ ./test20 
Outer loop: 1 
 Inner loop: 1 
 Inner loop: 2 
 Inner loop: 3 
 Inner loop: 4 
$ 
           

注意,當shell執行了break指令後,外部循環就停止了。

繼續閱讀