查看: 1740|回复: 0
打印 上一主题 下一主题

Shell while循环

[复制链接]
跳转到指定楼层
沙发
发表于 2014-8-17 13:36:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
while循环用于不断执行一系列命令,也用于从输入文件中读取数据;命令通常为测试条件。其格式为:
  1. while command
  2. do
  3.    Statement(s) to be executed if command is true
  4. done
复制代码

命令执行完毕,控制返回循环顶部,从头开始直至测试条件为假。

以下是一个基本的while循环,测试条件是:如果COUNTER小于5,那么返回 true。COUNTER从0开始,每次循环处理时,COUNTER加1。运行上述脚本,返回数字1到5,然后终止。
  1. COUNTER=0
  2. while [ $COUNTER -lt 5 ]
  3. do
  4.     COUNTER='expr $COUNTER+1'
  5.     echo $COUNTER
  6. done
复制代码

运行脚本,输出:
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
复制代码

while循环可用于读取键盘信息。下面的例子中,输入信息被设置为变量FILM,按<Ctrl-D>结束循环。
复制纯文本新窗口
  1. echo 'type <CTRL-D> to terminate'
  2. echo -n 'enter your most liked film: '
  3. while read FILM
  4. do
  5.     echo "Yeah! great film the $FILM"
  6. done
复制代码

运行脚本,输出类似下面:
  1. type <CTRL-D> to terminate
  2. enter your most liked film: Sound of Music
  3. Yeah! great film the Sound of Music
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入因仑

本版积分规则

快速回复 返回顶部 返回列表