十年專注于品牌網(wǎng)站建設 十余年專注于網(wǎng)站建設_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
      南昌百恒網(wǎng)絡微信公眾號 掃一掃關注
      小程序
      tel-icon全國服務熱線:400-680-9298,0791-88117053
      掃一掃關注百恒網(wǎng)絡微信公眾號
      掃一掃打開百恒網(wǎng)絡微信小程序

      百恒網(wǎng)絡

      南昌百恒網(wǎng)絡

      shell腳本之使用break命令退出循環(huán)

      百恒網(wǎng)絡 2017-09-01 16185

      break命令是退出循環(huán)的一個簡單方法。可以用break命令來退出任意類型的循環(huán),包括 while和until循環(huán)。

      有幾種情況可以使用break命令,那么到底是哪些情況下可以使用break命令呢?下面南昌網(wǎng)絡公司-百恒網(wǎng)絡就來和大家介紹一下:

      1、跳出單個循環(huán)

      在shell執(zhí)行break命令時,它會嘗試跳出當前正在執(zhí)行的循環(huán)。

      $ cat test17

      #!/bin/bash

      # breaking out of a for loop

      for var1 in 1 2 3 4 5 6 7 8 9 10

      do

      if [ $var1 -eq 5 ]

      then

      break

      fi

      echo "Iteration number: $var1"

      done

      echo "The for loop is completed"

      $ ./test17

      Iteration number: 1

      Iteration number: 2

      Iteration number: 3

      Iteration number: 4

      The for loop is completed

      $

      for循環(huán)通常都會遍歷列表中指定的所有值。但當滿足if-then的條件時,shell會執(zhí)行break 命令,停止for循環(huán)。

      這種方法同樣適用于while和until循環(huán)。

      $ cat test18

      #!/bin/bash

      # breaking out of a while loop

      var1=1

      while [ $var1 -lt 10 ]

      do

      if [ $var1 -eq 5 ]

      then

      break

      fi

      echo "Iteration: $var1"

      var1=$[ $var1 + 1 ]

      done

      echo "The while loop is completed"

      $ ./test18

      Iteration: 1

      Iteration: 2

      Iteration: 3

      Iteration: 4

      The while loop is completed

      $

      while循環(huán)會在if-then的條件滿足時執(zhí)行break命令,終止。

      2、跳出內(nèi)部循環(huán)

      在處理多個循環(huán)時,break命令會自動終止你所在的內(nèi)層的循環(huán)。

      $ cat test19

      #!/bin/bash

      # breaking out of an inner loop

      for (( a = 1; a < 4; a++ ))

      do

      echo "Outer loop: $a"

      for (( b = 1; b < 100; b++ ))

      do

      if [ $b -eq 5 ]

      then

      break

      fi

      echo " Inner loop: $b"

      done

      done $ ./test19

      Outer loop: 1

      Inner loop: 1

      Inner loop: 2

      Inner loop: 3

      Inner loop: 4

      Outer loop: 2

      Inner loop: 1

      Inner loop: 2

      Inner loop: 3

      Inner loop: 4

      Outer loop: 3

      Inner loop: 1

      Inner loop: 2

      Inner loop: 3

      Inner loop: 4

      $

      內(nèi)部循環(huán)里的for語句指明當變量b等于100時停止迭代。但內(nèi)部循環(huán)的if-then語句指明當 變量b的值等于5時執(zhí)行break命令。注意,即使內(nèi)部循環(huán)通過break命令終止了,外部循環(huán)依然 繼續(xù)執(zhí)行。

      3、跳出外部循環(huán)

      有時你在內(nèi)部循環(huán),但需要停止外部循環(huán)。break命令接受單個命令行參數(shù)值:

      break n

      其中n指定了要跳出的循環(huán)層級。默認情況下,n為1,表明跳出的是當前的循環(huán)。如果你將 n設為2,break命令就會停止下一級的外部循環(huán)。

      $ 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執(zhí)行了break命令后,外部循環(huán)就停止了。

      以上便是百恒網(wǎng)絡為大家介紹的關于shell腳本中使用break命令退出循環(huán)的幾種情況,了解更多關于shell腳本方面的知識,歡迎訪問百恒網(wǎng)絡,百恒網(wǎng)絡是優(yōu)秀的南昌網(wǎng)絡公司之一,精通各種網(wǎng)站建設語言方面的技術,主營網(wǎng)站建設、微信開發(fā)、APP開發(fā)等服務,如有需要我們服務的地方,可隨時來電和我們聯(lián)系!


      400-680-9298,0791-88117053
      掃一掃關注百恒網(wǎng)絡微信公眾號
      掃一掃打開百恒網(wǎng)絡小程序

      歡迎您的光顧,我們將竭誠為您服務×

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務 售后服務
       
      售后服務 售后服務
       
      備案專線 備案專線
       
      ×
      久久国产精品偷99| 日韩精品一区二区三区中文| 99精品在线视频观看| 91精品国产9l久久久久| sss视频在线精品| 日韩一区二区a片免费观看| 国产精品亚洲片在线花蝴蝶| 亚洲日韩国产AV无码无码精品 | 69久久精品无码一区二区| 99热久久这里只精品国产www| 精品无人区麻豆乱码1区2区| 国产亚洲精品激情都市| 国产精品xxxx国产喷水亚洲国产精品无码久久一区| 日韩欧群交P片内射中文| 日韩一区二区三区在线观看| 国产精品熟女视频一区二区| 精品综合久久久久久99| 国产精品99久久久久久人四虎| 中文字幕日韩精品一区二区三区| 色播精品免费小视频| 国产成人精品免费视频动漫| 亚洲精品电影天堂网| 亚洲精品免费在线视频| 亚洲精品视频免费在线观看| 亚洲精品中文字幕乱码影院| 91麻豆精品福利在线观看| 久久精品人人槡人妻人人玩AV| 亚洲精品视频在线| 热re99久久6国产精品免费| 熟妇无码乱子成人精品| 亚洲国产精品热久久| 久久丫精品国产亚洲av| 久久精品国产亚洲av麻豆小说| 精品无码一区二区三区爱欲九九 | 国产成人精品视频一区二区不卡| 亚洲精品国产精品乱码视色| 九九热在线精品视频| 亚洲国产精品VA在线观看麻豆| 国产成人精品电影在线观看| 久久99青青精品免费观看| 亚洲综合一区二区国产精品|