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

      百恒網絡

      南昌百恒網絡

      介紹for循環中continue命令的用法

      百恒網絡 2017-09-05 14092

      for循環中continue命令可以提前中止某次循環中的命令,但并不會完全終止整個循環。可以在循環內部設置shell不執行命令的條件。為了讓大家能夠對continue命令的用法更加了解,下面南昌網絡公司百恒網絡在這里就簡單舉個在for循環中使用continue命令的例子。

      $ cat test21

      #!/bin/bash

      # using the continue command

      for (( var1 = 1; var1 < 15; var1++ ))

      do

      if [ $var1 -gt 5 ] && [ $var1 -lt 10 ]

      then

      continue

      fi

      echo "Iteration number: $var1"

      done

      $ ./test21

      Iteration number: 1

      Iteration number: 2

      Iteration number: 3

      Iteration number: 4

      Iteration number: 5

      Iteration number: 10

      Iteration number: 11

      Iteration number: 12

      Iteration number: 13

      Iteration number: 14

      $

      當if-then語句的條件被滿足時(值大于5且小于10),shell會執行continue命令,跳過此 次循環中剩余的命令,但整個循環還會繼續。當if-then的條件不再被滿足時,一切又回到正軌。

      也可以在while和until循環中使用continue命令,但要特別小心。記住,當shell執行 continue命令時,它會跳過剩余的命令。如果你在其中某個條件里對測試條件變量進行增值,問題就會出現。

      $ cat badtest3

      #!/bin/bash

      # improperly using the continue command in a while loop

      var1=0

      while echo "while iteration: $var1"

      [ $var1 -lt 15 ]

      do

      if [ $var1 -gt 5 ] && [ $var1 -lt 10 ]

      then

      continue

      fi

      echo " Inside iteration number: $var1"

      var1=$[ $var1 + 1 ]

      done

      $ ./badtest3 | more

      while iteration: 0

      Inside iteration number: 0

      while iteration: 1

      Inside iteration number: 1

      while iteration: 2

      Inside iteration number: 2

      while iteration: 3

      Inside iteration number: 3

      while iteration: 4

      Inside iteration number: 4

      while iteration: 5

      Inside iteration number: 5

      while iteration: 6

      while iteration: 6

      while iteration: 6

      while iteration: 6

      while iteration: 6

      while iteration: 6

      while iteration: 6

      while iteration: 6

      while iteration: 6

      while iteration: 6

      while iteration: 6

      $

      你得確保將腳本的輸出重定向到了more命令,這樣才能停止輸出。在if-then的條件成立之前,所有一切看起來都很正常,然后shell執行了continue命令。當shell執行continue命令時,它跳過了while循環中余下的命令。不幸的是,被跳過的部分正是$var1計數變量增值的地方, 而這個變量又被用于while測試命令中。這意味著這個變量的值不會再變化了,從前面連續的輸出顯示中你也可以看出來。

      和break命令一樣,continue命令也允許通過命令行參數指定要繼續執行哪一級循環:

      continue n

      其中n定義了要繼續的循環層級。下面南昌百恒網絡繼續為大家介紹外部for循環的例子。

      $ cat test22

      #!/bin/bash

      # continuing an outer loop

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

      do

      echo "Iteration $a:"

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

      do

      if [ $a -gt 2 ] && [ $a -lt 4 ]

      then

      continue 2

      fi

      var3=$[ $a * $b ]

      echo " The result of $a * $b is $var3"

      done

      done

      $ ./test22

      Iteration 1:

      The result of 1 * 1 is 1

      The result of 1 * 2 is 2

      Iteration 2:

      The result of 2 * 1 is 2

      The result of 2 * 2 is 4

      Iteration 3:

      Iteration 4:

      The result of 4 * 1 is 4

      The result of 4 * 2 is 8

      Iteration 5:

      The result of 5 * 1 is 5

      The result of 5 * 2 is 10

      $

      其中的if-then語句:

      if [ $a -gt 2 ] && [ $a -lt 4 ]

      then

      continue 2

      fi

      此處用continue命令來停止處理循環內的命令,但會繼續處理外部循環。注意,值為3的那次迭代并沒有處理任何內部循環語句,因為盡管continue命令停止了處理過程,但外部循環依 然會繼續。

      以上就是南昌網絡公司百恒網絡為大家介紹的關于for循環中continue命令的用法,通過以上例子,大家是不是覺得很簡單呢?確實,只要用心,是真的很簡單!如果大家還有哪些不懂得地方,可隨時來電和我們聯系。此外,本公司專業從事網站建設、APP開發、微信開發等服務,如有需要,歡迎大家來電咨詢,洽談合作!


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

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

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務 售后服務
       
      售后服務 售后服務
       
      備案專線 備案專線
       
      ×
      国产精品午夜爆乳美女| 九九免费久久这里有精品23| 国产成人亚综合91精品首页 | 日韩精品在线免费观看| 亚洲国产精品一区二区久久| MM1313亚洲精品无码久久| 精品人妻一区二区三区四区| 久久国产精品久久精| 国产精品无码素人福利| 99在线视频精品| 国产在线精品国自产拍影院| 九九久久精品国产免费看小说| 亚洲国产精品不卡在线电影| 久久久久99精品成人片三人毛片| 久久久久九国产精品| 亚洲AV成人精品日韩一区| 99精品众筹模特自拍视频| 精品国产爽爽AV| 精品久久天干天天天按摩| 亚洲国产高清在线精品一区| 日本加勒比久久精品| 精品国产一区二区三区久久影院 | 久久精品国产亚洲Aⅴ香蕉| 5x社区精品视频在线播放18| 亚洲国产精品无码久久久不卡 | 中文字幕日韩精品无码内射| 日韩欧美群交P内射捆绑| 午夜精品久久久久久久| 精品日韩一区二区| 亚洲综合日韩久久成人AV| 久久香蕉国产线看观看精品yw| 日本精品卡一卡2卡3卡四卡| 日韩精品在线观看视频| 亚欧日韩毛片在线看免费网站 | 久久精品无码一区二区三区日韩 | 日韩有码在线视频| 丰满人妻熟妇乱又伦精品软件| 99久久99久久久精品久久 | 国产99视频精品免费视频76| 91精品一区二区综合在线| 国产av一区二区精品久久凹凸|