Shell脚本之while循环

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell脚本之while循环相关的知识,希望对你有一定的参考价值。

目录:
一.while循环与until循环
二.循环控制语句continue break shift
三.特殊用法

一.while循环与until循环

  • 1.while循环
    while CONDITION; do
    循环体
    done
    CONDITION:循环控制条件;进入循环之前,先做一次判 断;每一次循环之后会再次做判断;条件为真,则执行 一次循环;直到条件测试状态为假终止循环。
  • 2.until
    until CONDITION; do
    循环体 ?
    done
    until循环与while循环相反CONDITION:循环控制条件为假,则执行 一次循环;直到条件测试状态为真终止循环。
    例子:显示1-5的数字

                    #!/bin/bash
                          n=0
                        while [ $n -lt 5 ];do
                             let  n=$n+1
                            echo $n
                       done
  • until写法
    #!/bin/bash
    n=0
    until [ $n -eq 5 ];do
    let n=$n+1
    echo $n
    done

    二.循环控制语句

    continue break shift
    * 1.continue[N] :提前结束第N层的本轮循环,而直接进入下一 轮判断;最内层为第1层
    while CONDTIITON1; do
    CMD1 ...
    if CONDITION2; then
    continue
    fi
    CMDn
    ...
    done

  • 2.break [N]:提前结束第N层循环,最内层为第1层
    while CONDTIITON1; do
    CMD1 ...
    if CONDITION2; then
    break
    fi
    CMDn
    ...
    done

    我们对第一个例子做点修改 在其中加上continue和break
    #!/bin/bash
    n=0
    while [ $n -lt 5 ];do
    let n=$n+1
    if [ $n -eq 3 ];then
    continue
    fi
    echo $n
    done

  • 加入continue时输出结果为1245

                 #!/bin/bash
            n=0
       while [ $n -lt 5 ];do
               let  n=$n+1
            if [ $n -eq 3 ];then
               break
            fi
        echo $n
       done
  • 加入break的输出结果为12
    由此可以总结出两者的区别为continue是结束当轮循环
    break是结束当层循环
    3.shift [n] 用于将参量列表 list 左移指定次数,缺省为左移一次。 参量列表 list 一旦被移动,最左端的那个参数就从列表中删 除。

以上是关于Shell脚本之while循环的主要内容,如果未能解决你的问题,请参考以下文章

Linux的shell脚本实战之while循环

Linux系统shell脚本基础之while循环

Linux系统shell脚本之while循环实践1

shell脚本之十:while循环及应用实践

shell 脚本之循环使用 for while 详解

shell脚本——编程之循环语句(forwhileuntil)