OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4046|回复: 0

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

[复制链接]

132

主题

340

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1036
金钱
1036
注册时间
2017-10-30
在线时间
163 小时
发表于 2018-9-4 15:21:33 | 显示全部楼层 |阅读模式
  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
  linux免费学习课程 :
  http://www.makeru.com.cn/course/details/2058?s=26056
  http://www.makeru.com.cn/course/details/2478?s=26056
  http://www.makeru.com.cn/course/details/1937?s=26056

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 17:24

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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