zoukankan      html  css  js  c++  java
  • Shell 脚本学习笔记八:流程控制

    一、 if else      /// 如果else分支没有语句执行,就不要写这个else

        1、if 语句

            if condition

            then

                command1

                command2

                command3

                ...

            fi

            /// 写成一行:

            if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi

        2、if else

            if condition

            then

                command1

                command2

                ...

            else

                command

            fi

    #!/bin/bash
    
    num1=100;
    num2=100;
    
    if test $[num1] -eq $[num2]
    then
        echo "两个数相等";
    else
        echo "两个数不相等";
    fi
    
    输出以下结果:
    
    两个数相等

        3、if else-if else

            if condition

            then

                command1

                command2

            elif condition

            then

                command

            else

                command

            fi

    #!/bin/bash
    
    a=10
    b=20
    
    if [ $a == $b ]
    then
        echo "a 等于 b"
    elif [ $a -gt $b ]
    then
        echo "a 大于 b"
    elif [ $a -lt $b ]
    then
        echo "a 小于 b"
    else
        echo "没有符合的条件"
    fi 
    
    输出以下结果:
    
    a 小于 b

    二、for 循环

         for var in item1 item2 ... itemN

        do

            command1

            command2

            ...

        done

        /// 写成一行

        for var in item1 item2 ... itemN; do command1; command2; ... done;

    #!/bin/bash
    
    for loop in 1 2 3 4 5
    do
        echo "$loop";
    done
    
    输出以下结果:
    
    1 
    2
    3
    4 
    5
    
    
    for str in "This is a string"
    do 
        echo "$str";
    done
    
    输出以下结果:
    
    This
    is
    a 
    string

    三、while 语句

        while condition

        do

            command1

        done

    while [ $cnt -le 5 ]
    do
        echo $cnt
        let "cnt++"
    done
    
        echo "按下 <CTRL-D> 退出"

        

      while循环可用于读取键盘信息。下面的例子中,输入信息被设置为变量FILM,按<Ctrl-D>结束循环

        echo "按下 <CTRL-D> 退出"

        echo -n "输入你最喜欢的电影名:"

        while read FILM

        do

            echo "是的!$FILM 是一部好电影"

        done

    四、无限循环

        1、

            while :

            do

                command

            done

        2、

            while true

            do

                command

            done

        3、

            for (( ; ; ))

    五、until 循环

    • until循环执行一系列命令直至条件为真时停止
    • until循环与while循环在处理方式上刚好相反
    •  条件可为任意测试条件,测试发生在循环末尾,因此循环至少执行一次
    •  一般while循环优于until循环,但在某些时候—也只是极少数情况下,until循环更加有用  

        until condition

        do

            command

        done

    六、case

        case 值 in

            模式1)

                command1

                command2

                ...

                ;;

            模式2)

                command1

                command2

                ...

                ;;

        esac

    #!/bin/bash
    
    echo "输入 1 到 4 之间的数字"
    echo "你输入的数字为:"
    
    read aNum
    
    case $aNum in 
        1)
          echo "你选择了 1"
          ;;
        2)
              echo "你选择了 2"
              ;;
        3)
              echo "你选择了 3"
              ;;
        4)
              echo "你选择了 4"
              ;;
    esac

    七、break

        跳出所有循环(终止执行后面的所有循环)

        while :
        do
            echo -n "请输入 1 到 5 之间的数字:"
            read aNum
    case $aNum in 1|2|3|4|5) echo "你输入的数字为: $aNum" ;; *) echo "你输入的数字不是 1 到 5 之间的!结束游戏" break ;; esac done

      

    八、continue

        跳出本次循环

  • 相关阅读:
    fastapi+vue搭建免费代理IP网站部署至heroku
    如何选择免费代理ip,需要注意哪些指标值和基本参数
    如何部署MongoDB并开启远程访问Docker版
    Linux设置Frps Frpc服务开启启动
    Docker搭建VS Code Server ,设置访问密码随时随地写代码
    薅羊毛须及时 多平台微信线报提醒脚本
    python+selenium实现百度关键词搜索自动化操作
    用python selenium 单窗口单IP刷网站流量脚本
    杂记 内容会在留言中补充
    c#杂记
  • 原文地址:https://www.cnblogs.com/fanxiaocong/p/7068903.html
Copyright © 2011-2022 走看看