📅  最后修改于: 2023-12-03 14:47:26.461000             🧑  作者: Mango
在Shell脚本中,while循环是一种常用的循环结构。它可以根据条件来重复执行代码块,直到条件不满足为止。本文将介绍while循环的语法、用法和示例。
while循环的语法格式如下:
while [ condition ]
do
command1
command2
...
commandn
done
其中,condition
是一个命令或者表达式,如果它的退出状态为0(成功),则循环体中的命令会被执行。如果condition
的退出状态为非0(失败),则循环体中的命令不会被执行,直接跳出循环。
以下脚本可以打印0到4的数字:
#!/bin/bash
i=0
while [ "$i" -lt 5 ]
do
echo $i
i=$((i+1))
done
输出结果为:
0
1
2
3
4
脚本首先定义变量i
为0,然后使用while循环,条件为$i -lt 5
。循环体中先打印$i
的值,然后将$i
的值加1,最后跳转到循环开头继续执行,直到$i
的值不小于5为止。
以下脚本可以计算1到100的和:
#!/bin/bash
n=1
sum=0
while [ "$n" -le 100 ]
do
sum=$((sum+n))
n=$((n+1))
done
echo "1+2+...+100=$sum"
输出结果为:
1+2+...+100=5050
脚本首先定义变量n
为1,sum
为0,然后使用while循环,条件为$n -le 100
。在循环体中,将$n
的值累加到$sum
中,然后将$n
的值加1,最后跳转到循环开头继续执行,直到$n
的值大于100为止。最后输出$sum
的值。