break和continue以及exit 區別

#!/bin/bash
for i in `seq 1 3`
do
   echo "i=$i"
   for j in `seq 1 3`
   do
        echo "j=$j" 
        if [ $j -eq $i ]
        then
        break
        fi
        echo "j=$j"
   done
done

運行結果 i=1 j=1 i=2 j=1 j=1 j=2 i=3 j=1 j=1 j=2 j=2 j=3bash

三次的輸出結果能夠得出 break 直接退出當前循環,隻影響內置循環,對於外循環無影響。ide

#!/bin/bash
for i in `seq 1 3`
do
   echo "i=$i"
   for j in `seq 1 3`
   do
        echo "j=$j" 
        if [ $j -eq $i ]
        then
        continue
        fi
        echo "j=$j"
   done
done

運行結果i=1 j=1 j=2 j=2 j=3 j=3 i=2 j=1 j=1 j=2 j=3 j=3 i=3 j=1 j=1 j=2 j=2 j=3
從三次的輸出結果能夠得出 continue 是退出本次循環而且從新開始循環,且隻影響當前循環,
對於外循環無影響。code

#!/bin/bash
for i in `seq 1 3`
do
echo "i=$i"
        for j in `seq 1 3`
        do
        echo "j=$j"
          if [ $j -eq $i ]
          then
          exit 1
          echo "j=$j"
          fi
        done
done

運行結果: i=1 j=1 得出結論exit 直接退出整個腳本it

總結:break和continue二者都是隻影響當前內置循環,而exit則是直接退出整個腳本class

相關文章
相關標籤/搜索