shell脚本编程之循环语句

  在运行脚本时重复执行一系列的命令是很常见的,这时我们就需要使用循环语句来达到这个目的。

一、for命令

  格式:for 变量 in 列表;do 

        循环体

      done

  for命令会遍历列表中的每一个值,并且在遍历完成后退出循环。

  列表形式有以下几种:

    1、在命令中定义的一系列的值;

    2、变量;

    3、命令;

    4、目录;

    5、文件。

  实例1:

1.jpg

1.jpg

   上例中使用{初始值..结束值}格式来表示一个区间的数值。

  实例2:以变量作为列表:

2.jpg

  实例3:用命令生成列表:

2.jpg

   上例中使用seq命令来生成列表,seq命令的格式为:seq [初始值 步长] 终止值

3.jpg

    以上两个例子中使用反引号将得到命令运行的结果。

  实例4:将目录作为列表:

4.jpg

二、C语言风格的for命令

  格式:for (( 变量赋值;循环终止条件;步长 )); do 

        循环体

      done

  实例:求从1加到100的和:

5.jpg

三、until命令  

  格式:until 条件; do 

        statement

          …

      done 

  until命令中的条件满足时则会退出循环。

  实例:

6.jpg

四、while命令

  格式:while 条件; do

        statement

          …

      done

  while命令当条件满足时则进入循环。

  实例:

7.jpg 

五、控制循环

  1、break命令

   作用:退出正在进行中的循环。

   实例:如果变量i为3则退出循环。

1.jpg

  2、continue命令

    作用:提前进入下一轮循环。

    实例:将1到20和51到100之间的数相加:

2.jpg

六、while的殊用法

  1、死循环

    格式:while :; do     

         语句

        done

    实例:

1.jpg

  2、将文件内容逐行读入循环中

    格式:while read 变量名; do 

         循环体

        done < 文件

    实例:逐行读入/etc/passwd文件的内容:

2.jpg

 

原创文章,作者:petmaster,如若转载,请注明出处:http://www.178linux.com/10762

(0)
petmasterpetmaster
上一篇 2016-01-01
下一篇 2016-01-05

相关推荐

  • MySQL应用管理

    这篇文章主要讲述基本的SQL语句,以供新手参考使用,不过最好的办法还是查阅官方文档和help命令。 进入正题 什么是SQL?        SQL结构化查询语言,是关系型数据库查询和管理语言,是一种数据库查询和程序设计语言,用于存取数据以及查询,更新和管理关系型数据库系统。 SQL的分类 &nbsp…

    Linux干货 2015-09-23
  • find、locate详细解析

    文件查找 在linux系统中如果我们不知道具体的文件的具体位置,我们可以使用文件查找命令来找到我们想找的文件,linux中也有相当优秀的查找命令,(如locate、find),通常查找速度快是locate,因为它是利用数据库查找的,所以速度很快,而find是全磁盘扫描进行查找,所以速度比较慢。 locate和find都是在文件系统上查找符合条件的文件含义。 …

    Linux干货 2016-08-13
  • CentOS 7破解密码教程

    启动时任意键暂停启动  按e键进入编辑模式  将光标移动linux16开始的行,添加内核参数rd.break  按ctrl-x启动  mount –o remount,rw /sysroot  chroot /sysroot  passwd root  touch /.autorelabe…

    Linux干货 2016-12-01
  • 马哥教育网络班21期+第14周课程练习

    iptables关键点 表:filter(过滤,防火墙);nat(网络地址转换);mangle(拆解报文,做出修改,封装报文);raw(关闭nat表启用的链接追踪机制);上述是根据功能来区分的,写规则要明白要实现的功能 链:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING 数据流向:流入PREROUTING–…

    Linux干货 2016-08-26
  • CentOS 6启动过程总结与GRUB问题修复

    一、CentOS 6 的启动流程 第一步:加电自检(POST) 主要检查硬件设备是否存在并能正常运行,如:CPU、内存、硬盘、风扇、输入输出设备等。自检功能主要是通过BIOS来实现的,BIOS程序是装载在一个硬件芯片CMOS上的,加电过程就是给CMOS通电,然后启动BIOS程序,BIOS程序会根据CMOS上面的一些配置信息区读取其他的硬件设备信息并检测其是否…

    Linux干货 2016-09-16
  • bash中的算术运算及条件测试

    bash的算术运算 +, -, *, /, %取模(取余), **(乘方) 实现算术运算: (1) let var=算术表达式 (2) var=$[算术表达式] (3) var=$((算术表达式)) (4) var=$(expr arg1 arg2 arg3 …) (5) declare –i var = 数值 (6) echo ‘算术表达式’ …

    Linux干货 2017-04-17