Unix / Linux Shell - while 循环

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


语法

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

这里对 Shell command 进行了评估。 如果结果值为 true,则执行给定的 statement(s)。如果 commandfalse 则不会执行任何语句,程序将跳转到 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。