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


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

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

    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技术达人【daxue】发表在:Linux大学
    本文固定链接:Linux Shell系列教程之(十一)Shell while循环
  • 相关阅读:
    SVN日常使用
    zabbix安装
    shell日常脚本(centos6)
    mysql故障记录
    PHP商品秒杀功能实现思路分析
    Redis
    PHP 实现实时通信一般有两种方式
    FTP DNS SMTP POP3 HTTP HTTPS DHCP DNS SNMP Telnet 端口号
    TCP/UDP/HTTP的区别和联系
    TCP 和 UDP 的区别
  • 原文地址:https://www.cnblogs.com/waitig/p/5583481.html
Copyright © 2020-2023  润新知