• 自动化运维:(2)Shell 编程的流程控制


    一、 if语句

    1、单分支if语句——单一条件,只有一个输出

    #!/bin/bash
    # 单if语句的使用场景
    if [ "$1" == "nan" ]
    then
       echo "您的性别是 男"
    fi

    2、双分支if语句——一个条件,两种结果

    #!/bin/bash
    # 单if语句的使用场景
    if [ "$1" == "nan" ]
    then
       echo "您的性别是 男"
    else
       echo "您的性别是 女"
    fi    

    3、多分支if语句——n个条件,n+1个结果

    #!/bin/bash
    # 单if语句的使用场景
    if [ "$1" == "nan" ]
    then
       echo "您的性别是 男"
    elif [ "$1" == "nv" ]
    then
       echo "您的性别是 女"
    else
       echo "您的性别,我不知道"
    fi

    二、case选择语句

    case语句格式:

    case 变量名 in
       值1)
          指令1
             ;;
       值2)
          指令2
             ;;
       值3)
           指令3
             ;;
    esac

    示例:

    # cat case.sh 
    #!/bin/bash
    # case语句使用场景
    case "$1" in                    
        "start")                    
            echo "服务启动中..."                    
            ;;                    
        "stop")                    
            echo "服务关闭中..."                    
            ;;                            
        "restart")                    
            echo "服务重启中..."                    
            ;;                    
        *)                    
            echo "$0 脚本的使用方式: $0 [ start | stop | restart ]"        
            ;;                    
    esac

    三、for循环语句

    #!/bin/bash
    # for语句的使用示例
    for i in $(ls /root)
    do
      echo "${i}"
    done

    四、while循环语句

    #!/bin/bash
    # while的示例
    a=1
    while [ "${a}" -lt 5 ] 
    do
       echo "${a}"
       a=$((a+1))
    done

    五、until循环语句

    #!/bin/bash
    # until的示例
    a=1
    until [ "${a}" -eq 5 ] 
    do
       echo "${a}"
       a=$((a+1))
    done

    六、复杂流程控制语句——函数

      函数就是将某些命令组合起来实现某一特殊功能的方式,是脚本编写中非常重要的一部分。

    简单函数定义:

    #!/bin/bash
    # 函数使用场景一:执行频繁的命令
    dayin(){
      echo "My name is mzf"
    }
    # 调用:
    dayin

    函数传参:

    #!/bin/bash
    # 函数的使用场景二
    dayin(){
      echo "My name is $1"
    }
    
    # 调用并传入参数
    dayin mzf

    调用脚本时传参:

    #!/bin/bash
    # 函数传参演示
    
    # 定义传参数函数
    dayin(){
      echo "My name is $1, gender $2, age $3"
    }
    
    # 函数接收调用脚本时传进的传参
    dayin $1 $2 $3
  • 相关阅读:
    SQL关键字的执行顺序
    StructuredStreaming基础操作和窗口操作
    StructuredStreaming简单的例子(NewAPI)
    StructuredStreaming(New)
    StructuredStreaming编程模型
    SparkStreaming简单例子(oldAPI)
    SparkStreaming架构
    Storm与SparkStreaming对比
    SparkStreaming-DStream(Discretized Stream)
    史上最全的java随机数生成算法分享(转)
  • 原文地址:https://www.cnblogs.com/mzfly/p/9973046.html
Copyright © 2020-2023  润新知