一、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-tw/n/292082.html
微信掃一掃
支付寶掃一掃