zoukankan      html  css  js  c++  java
  • shell脚本(9)-流程控制for

    一、循环介绍

    for循环叫做条件循环,或者for i in,可以通过for实现流程控制

     

    二、for语法

    1、for语法一:for in

    for var in value1 value2 ......
        do
            commands
    done

    举例说明:输出1到10

    [root@localhost test20210726]# vim for1test.sh
    
    #!/usr/bin/bash
    for i in `seq 1 10`
        do
            echo $i
    done

    查看运行结果:

    [root@localhost test20210726]# sh for1test.sh 
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

    2、for语法二:for  by c语言

    for ((变量;条件;自增自减运算))do
            commands
    done

    举例说明:输出1到10

    [root@localhost test20210726]# vim for2test.sh 
    
    #!/usr/bin/bash
    
    for ((i=1;i<=10;i++))
        do
            echo $i
    done

    查看运行结果:

    [root@localhost test20210726]# sh for2test.sh 
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

    3、for语法三:for多个变量

    [root@localhost test20210726]# vim for3test.sh
    
    #!/usr/bin/bash
    
    for ((a=0,b=9;a<10;a++,b--))
        do
            echo $a $b
    done

    查看运行结果:

    [root@localhost test20210726]# sh for3test.sh 
    0 9
    1 8"I
    we km eqg tg00 v6
    4 5iu78
    5 4
    6 3
    7 2
    8 1
    9 0

     

    三、循环控制

    1、sleep:睡眠+秒

    [root@localhost test20210727]# vim testsleep.sh
    
    #!/usr/bin/bash
    
    for var in 1 2 3 4 5 6 7 8 9
      do
        echo $var
        sleep 1
    done

    查看运行结果:(每隔一秒打印一个数字)

    [root@localhost test20210727]# sh testsleep.sh 
    1
    2
    3
    4
    5
    6
    7
    8
    9

    2、continue:跳过循环中的某次循环

    [root@localhost test20210728]# vim continue.sh
    
    #!/usr/bin/bash
    
    #输出 1 2 3 4 6 7 8 9
    for ((i=1;i<10;i++))
      do
        if [ $i -eq 5 ];then
          continue
        fi
        echo $i
    done

    查看运行结果:

    [root@localhost test20210728]# sh continue.sh 
    1
    2
    3
    4
    6
    7
    8
    9

     3、break:跳出循环继续执行后续代码

    [root@localhost test20210728]# vim break.sh 
    
    #!/usr/bin/bash
    
    #输入 1 2 3 4 5 
    for ((i=1;i<10;i++));do
      echo -n $i" "
      if [ $i -eq 5 ]
        then
          break;
      fi
    done

    查询运行结果:

    [root@localhost test20210728]# sh break.sh 
    1 2 3 4 5 
  • 相关阅读:
    将十六进制的颜色字符串转为UIColor
    NSXMLParser读取XML文件并将数据显示到TableView上
    TouchJSON的简单使用
    NSJSONSerialization的简单用法
    Android 开发之修改 app 的字体大小(老人模式)
    android sqlite3:数据库操作
    设计模式-观察者模式(Observer Pattern)
    Android 7.0 介绍和适配问题
    Appium的安装和使用
    Android:使用 DownloadManager 进行版本更新,出现 No Activity found to handle Intent 及解决办法
  • 原文地址:https://www.cnblogs.com/mrwhite2020/p/15017985.html
Copyright © 2011-2022 走看看