caoporm97国产在线视频|欧美性XXXXX精品|一本一道久久a久久精品综合开|精品久久久久久久久久久AⅤ|

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

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

介紹for循環(huán)中continue命令的用法

百恒網(wǎng)絡(luò) 2017-09-05 13614

for循環(huán)中continue命令可以提前中止某次循環(huán)中的命令,但并不會(huì)完全終止整個(gè)循環(huán)??梢栽谘h(huán)內(nèi)部設(shè)置shell不執(zhí)行命令的條件。為了讓大家能夠?qū)ontinue命令的用法更加了解,下面南昌網(wǎng)絡(luò)公司百恒網(wǎng)絡(luò)在這里就簡(jiǎn)單舉個(gè)在for循環(huán)中使用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

$

當(dāng)if-then語句的條件被滿足時(shí)(值大于5且小于10),shell會(huì)執(zhí)行continue命令,跳過此 次循環(huán)中剩余的命令,但整個(gè)循環(huán)還會(huì)繼續(xù)。當(dāng)if-then的條件不再被滿足時(shí),一切又回到正軌。

也可以在while和until循環(huán)中使用continue命令,但要特別小心。記住,當(dāng)shell執(zhí)行 continue命令時(shí),它會(huì)跳過剩余的命令。如果你在其中某個(gè)條件里對(duì)測(cè)試條件變量進(jìn)行增值,問題就會(huì)出現(xiàn)。

$ 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執(zhí)行了continue命令。當(dāng)shell執(zhí)行continue命令時(shí),它跳過了while循環(huán)中余下的命令。不幸的是,被跳過的部分正是$var1計(jì)數(shù)變量增值的地方, 而這個(gè)變量又被用于while測(cè)試命令中。這意味著這個(gè)變量的值不會(huì)再變化了,從前面連續(xù)的輸出顯示中你也可以看出來。

和break命令一樣,continue命令也允許通過命令行參數(shù)指定要繼續(xù)執(zhí)行哪一級(jí)循環(huán):

continue n

其中n定義了要繼續(xù)的循環(huán)層級(jí)。下面南昌百恒網(wǎng)絡(luò)繼續(xù)為大家介紹外部for循環(huán)的例子。

$ 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命令來停止處理循環(huán)內(nèi)的命令,但會(huì)繼續(xù)處理外部循環(huán)。注意,值為3的那次迭代并沒有處理任何內(nèi)部循環(huán)語句,因?yàn)楸M管continue命令停止了處理過程,但外部循環(huán)依 然會(huì)繼續(xù)。

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


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開百恒網(wǎng)絡(luò)小程序

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

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
×