#Bash 的 while 循环语句

Bash 的 while 循环语句的语法为:

1
2
3
4
5
6
while 条件命令
do
命令
...
done

只要条件为真,就执行循环

其中,条件命令返回成功(0)时为真(true),返回失败(非 0)时为假(false)。

如果省略(部分)换行,则需要使用分号(;)区分:

1
2
while 条件命令; do 命令; 命令; done

示例:

1
2
3
4
5
6
7
number=0
while [ "$number" -lt 10 ] # 只要 "$number" 小于 10,就循环执行
do
echo "$number"
number=$((number + 1))
done

  • 循环打印并增加变量 number 的值

运行结果:

1
2
3
4
5
6
7
8
9
10
11
0
1
2
3
4
5
6
7
8
9

#break 和 continue 命令

breakcontinue 是 Bash 的内置命令,用于跳出循环。

  • break 命令立即终止整个循环,继续执行循环之后的命令
  • continue 命令立即结束本轮循环,开始执行下一轮循环

示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
number=0
while true # 一直循环执行
do
if [ "$number" -eq 10 ] # number 等于 10 时结束循环
then
break # 结束循环
fi

if [ "$number" -eq 4 ] # number 等于 4 时加 3 并跳过本轮循环
then
number=$((number + 3))
continue # 进入下一轮循环
fi

echo "$number"
number=$((number + 1))
done

  • number 等于 10 时结束循环
  • number 等于 4 时加 3 并跳过本轮循环

运行结果:

1
2
3
4
5
6
7
8
0
1
2
3
7
8
9


Bash 的 while 循环语句》 是转载文章,点击查看原文