• shell脚本之循环和循环控制


    一、循环

    1.for循环

    1)格式

    基本格式

    for var in list
    do
        循环体
    done
    
    其中
    list是可迭代的对象,常见的包括:
    数组
    $(seq n m)  表示从n到m的正整数序列
    {n..m}      表示从n到m的正整数
    value1 value2 value3 ...   一系列值,可以是数值和字符串,value有空格必须使用双引号或者单引号

    c语言风格的格式

    for ((变量初始值;循环控制条件;变量变化))
    do
        循环体
    done

    2) 示例

    #!/bin/bash

    for
    i in $(seq 1 10) do echo "${i}" done


    输出结果
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

    2.wihle循环

    1)格式

    while 条件
    do
        循环体
    done

    2)示例

    #!/bin/bash
    
    a=10
    
    while [ ${a} -gt 0 ]
    do
        echo "${a}"
        a=$[ $a - 1 ]
    done



    输出结果
    10
    9
    8
    7
    6
    5
    4
    3
    2
    1

    3.until循环

    1)格式

    until 条件
    do
        循环体
    done
    
    条件为假,进入循环;直到条件为真时退出循环

    2)示例

    #!/bin/bash
    
    a=10
    
    until [ ${a} -lt 0 ]
    do
        echo "${a}"
        a=$[ $a - 1 ]
    done



    输出结果
    10
    9
    8
    7
    6
    5
    4
    3
    2
    1

    二、循环控制

    1.break

    退出循环,适用于所有循环

    示例

    #!/bin/bash
    
    for i in {1..10}
    do
        if [ ${i} -eq 2 ];then
            echo "${i}"
        else
            break
        fi
    done
    
    
    输出结果
    没有输出结果
    i=1时经过if判断执行break跳出循环,没有任何输出

    2.continue

    跳过本次循环,继续下一次循环,适用于所有循环

    示例

    #!/bin/bash
    
    for i in {1..10}
    do
        if [ ${i} -eq 2 ];then
            echo "${i}"
        else
            continue
        fi
    done



    输出结果
    2
  • 相关阅读:
    懒人模式Singleton模式Meyers版本号
    欢迎CSDN-markdown编辑
    协同编辑多人word一个小技巧文件
    72_leetcode_Construct Binary Tree from Preorder and Inorder Traversal
    2015第44周五Java集群技术(转)
    linux远程管理工具
    2015第44周三提升个人价值意识
    2015第44周二
    2015第44周一
    2015第43周日
  • 原文地址:https://www.cnblogs.com/gudanaimei/p/13191850.html
Copyright © 2020-2023  润新知