Linuxwilliam hill官网
直播中

慧心的眼眸

7年用户 631经验值
私信 关注
[经验]

Linux 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 makeru.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,然后进入下面的循环,满足条件后跳出循环。

  linux学习交流群:690327559

更多回帖

发帖
×
20
完善资料,
赚取积分