shell编程(8) until循环以及函数基本创建调用

声明
学习视频来自B站UP主 泷羽sec,如涉及侵泷羽sec权马上删除文章
笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。


1.until循环

until是 bash 脚本中用于构建循环结构的关键字之一,表示接下来的代码块(即循环体)会反复执行,直到所设定的条件表达式为真时,循环才会终止。

#! /bin/bash

i=0
until [ ! $i -lt 10 ]
do
        echo $i
        ((i++))
done

$i -lt 10 判断 i 是否小于 10。! 是逻辑非操作符,表示将条件反转。

dodone表示循环的开始和结束。

2.case控制流结构

case 控制流结构是 Bash 等 shell 脚本语言中的一种条件判断结构,用于根据不同的模式匹配来执行不同的代码块。它类似于其他编程语言中的 switch 语句。case 语句会按顺序逐个检查各个模式,直到找到第一个匹配的模式为止。如果有匹配的模式,则执行对应的命令块。如果没有匹配的模式,则执行默认的 * 分支。

#! /bin/bash

read -p "请输入一个数字:" num
case $num in
        1)echo 您输入的数字是1
                ;;
        2)echo 您输入的数字是2
                ;;
        *)echo 您输入的是其他数字
                ;;
esac

read -p "请输入一个数字:" num,read -p 命令用于从用户输入中读取数据,-p 后面是提示信息,用户看到的提示会是“请输入一个数字:”,然后用户输入的内容会被存储在变量 num 中。

case $num in,$num 是用户输入的数字,这里是 case 判断的变量。

1)echo 您输入的数字是1,如果 $num 的值是 1,就输出 您输入的数字是1
;;,表示当前分支结束,case 语句继续判断下一个条件。

*)echo 您输入的是其他数字,* 是通配符,表示匹配所有其他值。也就是说,如果 $num 不是 1 或 2,就会执行这个分支。

esac 是 case 语句的结束标志,相当于 fi 用于结束 if 语句。

3.基本函数

#! /bin/bash

 # 定义声明函数

DemoFunc(){
        # 函数体内部

        echo "hello world"
}

# 调用函数,输出hello world
DemoFunc

#! /bin/bash

# 定义声明函数
DemoFunc(){
        # 函数体内部
        echo "hello world"
        # $1 表示接收到的第一个参数
        echo "My name is $1"
}
# 调用函数,并将参数123 传递给 DemoFunc
DemoFunc 123

#! /bin/bash

# 定义声明函数
DemoFunc(){
        # 函数体内部
        echo "hello world"
        # $1 表示接收到的第一个参数
        # $2 表示接收到的第二个参数
        echo "My name is $1 and my age is $2 years old"
}
# 调用函数,并将参数123 111 传递给 DemoFunc
DemoFunc 123 111

               

posted @ 2024-12-16 18:42  空前123  阅读(14)  评论(0)    收藏  举报