Shell 的 while 循环跟 if 条件判断类似,都是在特定条件满足的情况下,执行相对应的代码,不过,while 循环是只要条件满足,会一直执行缩进里面的代码块,这点又类似于 for 循环 。
while condition do statements done
参数 | 描述 |
---|---|
while | while 循环使用的关键字。 |
condition | while 循环的条件,如果为真,则一直执行 while 循环。 |
do | while 循环使用的关键字。 |
statements | while 循环的条件满足时,执行的代码块。 |
done | while 循环使用的关键字。 |
当 condition 条件为真时,一直执行缩进里面的 statements 代码块,直到 cond 条件为假,循环结束。
使用 while 循环,遍历数字
#!/bin/bash
num=0
while ((num < 3))
do
echo $num
((num++))
done
程序运行后,控制台输出如下:
首先,我们定义了一个整型类型的 变量 num,并且赋值为 0,接着使用 while 循环来判断变量 num 是否小于 3,如果小于,则一直执行 echo 的代码块,并且每次执行后都将 num 变量加 1。
使用 while 循环,求和
#!/bin/bash
num=0
sum=0
while ((num <= 100))
do
((sum+=num))
((num++))
done
echo $sum
程序运行后,控制台输出如下:
首先,我们定义了一个整型类型变量 num 和 sum,并且都赋值为 0,接着使用 while 循环来判断变量 num 是否小于等于 100,如果成立,则一直将当前 sum 的值加上 num,并且每次执行后都将 num 变量加 1。
整个 while 循环执行完毕后,执行 echo 的代码块,输出 Sum 的值。因为 echo 语句不是在 while 循环的大括号的代码块里面,而是在 while 循环代码块外面,因此 echo 是 while 循环执行完毕才会执行的。
Shell 的 while 循环跟 if 条件判断类似,都是在特定条件满足的情况下,执行相对应的代码,不过,while 循环是只要条件满足,会一直执行缩进里面的代码块,这点又类似于 for 循环 。