一、continue的作用及用法
在Shell腳本中,continue語句用於跳過當前循環中的剩餘語句,進入下一次迭代。當程序執行到continue語句的時候,它會直接跳過後面的所有語句,開始下一次循環。continue語句通常在if語句或者case語句中使用。
continue語句的語法如下:
continue [n]
其中,n表示跳過多少次循環。如果n沒有指定,則默認為1。
下面是一個continue的示例,該示例在for循環中使用continue語句:
#!/bin/bash for i in 1 2 3 4 5 do if [ $i == 3 ] then continue fi echo "Iteration number: $i" done
運行上述代碼,輸出如下:
Iteration number: 1 Iteration number: 2 Iteration number: 4 Iteration number: 5
二、使用continue跳過多層循環
在Shell腳本中,continue語句還可以跳過多層循環。這種情況下,continue語句需要指定一個整數參數,表示跳過多少層循環。
下面是一個示例,該示例在兩層循環中使用continue語句:
#!/bin/bash for i in 1 2 3 do for j in 1 2 3 do if [ $i == 2 -a $j == 2 ] then continue 2 fi echo "i is $i, j is $j" done done
運行上述代碼,輸出如下:
i is 1, j is 1 i is 1, j is 2 i is 1, j is 3 i is 2, j is 1 i is 3, j is 1 i is 3, j is 2 i is 3, j is 3
在上述示例中,如果$i等於2且$j等於2,則continue語句將會跳過兩層循環。
三、使用continue跳出無限循環
在Shell腳本中,使用while語句或者for語句可以創建無限循環。如果不加以控制,則該循環將一直執行下去。continue語句也可以用於跳出無限循環。
下面是一個示例,該示例使用while循環創建了一個無限循環,當輸入quit時,程序將跳出while循環:
#!/bin/bash while : do read input if [ $input == "quit" ] then break fi if [ $input == "continue" ] then continue fi echo "Input is $input" done
運行上述代碼,輸出如下:
hello Input is hello continue 5 Input is 5 quit
在上述示例中,如果輸入是continue,則程序使用continue語句跳過當前循環。如果輸入是quit,則程序使用break語句跳出循環。
四、使用continue提高腳本效率
在Shell腳本中,使用continue語句可以提高腳本效率。
下面是一個示例,該示例使用continue語句來提高腳本效率:
#!/bin/bash for i in 1 2 3 4 5 do if [ $i == 3 ] then continue fi echo "Iteration number: $i" done
上述示例中,使用continue語句跳過$i等於3的循環,這樣可以減少循環次數,提高腳本效率。
五、小結
通過本文對Shell腳本中的continue語句的介紹和示例,我們了解了continue語句的作用和用法。continue語句通常在if語句或者case語句中使用,可以用於跳過當前循環,進入下一次迭代。如果指定了參數,則可以跳過多層循環。同時,continue語句還可以用於跳出無限循環,提高腳本效率。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/292082.html