• 一、Shell编程_5Shell流程控制


    一、Shell编程_5Shell流程控制

    (if是判断一个范围进行分支、case是判断几个具体的值进行分支)

    1. if判断:

    基本语法:(!!!简写:if [ 条件判断式 ]; then 程序; fi;)

    if [ 条件判断式 ];then
       程序
    else
       程序
    fi
    
    • 1
    • 2
    • 3
    • 4
    • 5

    或者:

    if [ 条件判断式 ]
    then
      程序
    elif [ 条件判断式 ]
    then
      程序
    fi
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    注意事项:
    1)[ 条件判断式 ]中括号和条件判断式之间必须有空格(if与"[“也有空格即”["前后都要有空格)
    2)推荐使用第二种方式;

    应用实例: 请编写一个shell程序,如果输出的参数大于等于60,则输出“及格了”,如果小于60,则输出“不及格”;
    在这里插入图片描述

    2. case语句:

    基本语法:

    case $变量名 in
    "值1")
    如果变量的值等于值1,则执行程序1
    ;;
    "值2")
    如果变量的值等于值2,则执行程序2
    ;;
    省略其他分支...
    *)
    如果变量的值都不是以上的值,则执行此程序
    ;;
    esac
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    应用案例: 当命令行参数是1时,输出“周一”,是2时,就是出“周二”,其他情况输出“other”;
    在这里插入图片描述

    3. for循环:

    基本语法1:(!!!简写:for 变量 in 值1 值2 值3; do 程序; done)

    for 变量 in 值123 ...
    do
    	程序
    done
    
    • 1
    • 2
    • 3
    • 4

    应用案例1: 打印命令行输入的参数
    在这里插入图片描述
    基本语法2:

    for ((初始值;循环控制条件;变量变化))
    do
       程序
    done
    
    • 1
    • 2
    • 3
    • 4

    应用案例2: 从1加到100的值输出显示[会使用到去取命令行占位的方式:$ * 和 $ @。这里可以看出 $ * 和 $@ 的区别]
    在这里插入图片描述

    4. while循环:

    基本语法1:(!!!简写:while [ 条件判断式 ]; do 程序; done)

    while [ 条件判断式 ]
    do
       程序
    done
    
    • 1
    • 2
    • 3
    • 4

    应用案例1: 从命令行输出一个数n,统计从1+…+n的值是多少?
    在这里插入图片描述

  • 相关阅读:
    项目设计:YOLOv5目标检测+机构光相机(intel d455和d435i)测距
    C#委托传值
    多通道ECG心率监测系统
    Egg如何实现文件上传
    qml保姆级教程一:布局组件
    mapreduce-maven--30.串联所有单词的字串
    JDK8新特性之 stream流
    Linux安装Samba服务,基于Fedora
    docker基础
    JAVA 实现《五子棋单机版》游戏
  • 原文地址:https://blog.csdn.net/qq_41029923/article/details/126415502