while语句

linux如何定时执行shell脚本(每天三分钟搞定linux)(1)

while判断条件是否成立,若成立则进入while的分支,举例如下:

#/bin/bash

var1=1

var2=4

while [ $var1 -lt 3 ] && [ $var2 -gt 0 ];do

echo "$var1 * $var2 = $[$var1 * $var2]"

var1=$[$var1 1]

var2=$[$var2 - 1]

done

运行结果为:

1 * 4 = 4

2 * 3 = 6

util语句

linux如何定时执行shell脚本(每天三分钟搞定linux)(2)

until语句的逻辑与while相反,while当条件判断成功时进入循环,until条件判断失败时进入,举例如下:

#/bin/bash

var=0

until [ $var -gt 3 ];do

echo "var=$var"

var=$[$var 1]

done

运行结果如下:

var=0

var=1

var=2

var=3

break语句和continue语句

linux如何定时执行shell脚本(每天三分钟搞定linux)(3)

break语句用于跳出当前层的循环,举例如下:

#/bin/bash

for ((i=0; i<2;i ));do

for ((j=0;j<5;j ));do

echo "i=$i,j=$j"

if [ $j -eq 2 ];then

break

fi

done

done

运行如下:

i=0,j=0

i=0,j=1

i=0,j=2

i=1,j=0

i=1,j=1

i=1,j=2

break只能跳出当前层的循环,上面这个例子有两层循环的嵌套,那么当内层的break执行的时候只能跳出内层。

如果想要跳出多层循环,可以使用break n,举例如下:

#/bin/bash

for ((i=0; i<2;i ));do

for ((j=0;j<5;j ));do

echo "i=$i,j=$j"

if [ $j -eq 2 ];then

break 2

fi

done

done

运行结果如下:

i=0,j=0

i=0,j=1

i=0,j=2

continue语句用于终止本次循环,即本次循环中continue后面的代码不执行,进行下一次循环的入口判断,举例如下:

#/bin/bash

for ((i=0; i<5;i ))

do

if [ $i -lt 3 ];then

continue

fi

echo "i = $i"

done

运行结果如下:

i = 3

i = 4

cotinue语句和break一样,也可以用continue n

,