Unix / Linux Shell - while 循环

while 循环使您能够重复执行一组命令,直到出现某些情况。 它通常在需要重复操作变量的值时使用。


语法

while command
do
   Statement(s) to be executed if command is true
done

这里对 Shell command 进行了评估。 如果结果值为 true,则执行给定的 statement(s)。如果 command 为 false 则不会执行任何语句,程序将跳转到 done 语句后的下一行。


示例

这是一个使用 while 循环显示数字 0 到 9 的简单示例 −

#!/bin/sh

a=0

while [ $a -lt 10 ]
do
   echo $a
   a=`expr $a + 1`
done

执行后,您将收到如下结果 −

0
1
2
3
4
5
6
7
8
9

每次执行此循环时,都会检查变量 a 以查看其值是否小于 10。如果 a 的值小于 10,则此测试条件的退出状态为 0。在这种情况下,显示 a 的当前值,随后 a 递增 1。