`
天梯梦
  • 浏览: 13630191 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

Linux Shell脚本入门教程系列之(十一)Shell while循环

 
阅读更多

本文是Linux Shell脚本系列教程的第(十一)篇,更多Linux Shell教程请看:Linux Shell脚本系列教程

在上一篇Linux Shell系列教程之(十)Shell for循环中,我们已经对Shell 循环语句的for循环进行了介绍,本篇给大家介绍下Shell 中另一种循环语句:Shell while循环。

 

Shell while循环语法及特点

Shell while循环的语法如下所示:

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

 

command 为条件测试,如果传回值为0(条件测试为真),则进入循环,执行命令区域,否则不进入循环。

在执行命令的区域中,应该要有改变条件测试的命令,这样,才有机会在有限步骤后结束执行while循环(除非想要执行无穷循环)。

 

while循环通常用来不断执行一系列命令,也可以用来从输入文件中读取数据;

命令通常为测试条件。

 

Shell while循环使用举例

了解了Shell while循环的语法及特点以后,接下来通过几个例子来详细了解下Shell while循环的使用。

 

例子1:

COUNTER=0
while [ $COUNTER -lt 5 ]
do
    COUNTER='expr $COUNTER+1'
    echo $COUNTER
done

 说明:如果COUNTER小于5,那么返回 true。COUNTER从0开始,每次循环处理时,COUNTER加1,直到COUNT为5后终止。

输出:

1

2

3

4

5

 

例子2:

#!/bin/bash
while read text
do
  echo ${text}
done < /home/infile

 说明:这个例子使用read在标准输入读取数据,放入变量text中,如果读到的数据非空,就进入循环。然后在循环中把该行数据显示出来。

 

最后一样是输入重定向,将/home/infile的内容作为此脚本的标准输入。

此脚本的输出结果就是infile文件的内容。

 

输出:

Hello world!

I am linuxdaxue.com!

 

例子3:

#!/bin/bash
declare -i i=1
declare -i sum=0
while ((i<=10))
do
  let sum+=i
  let ++i
done
echo $sum

 说明:在这个例子中,首先声明了两个int类型的变量i和sum,然后进入下面的循环,满足条件后跳出循环。

结果:这个例子就作为留给大家的一个思考题目,大家可以自己试验下,或者关注我的微信公众号(微信号:Linuxdaxue)后,发送【shell while循环】,来查看答案。

 

好了,有关Shell while循环的内容今天就先给大家介绍这些。更多Linux Shell教程请看:Linux Shell脚本系列教程

 

原文:Linux Shell系列教程之(十一)Shell while循环

本文转自:Linux Shell脚本入门教程系列之(十一)Shell while循环

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics