当前位置: 首页 > news >正文

Shell编程8

声明!

学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页[B站泷羽sec](泷羽sec的个人空间-泷羽sec个人主页-哔哩哔哩视频)

1. until循环

#!/bin/bash
​
i=0 # 初始化变量i的值为0,可以根据需要修改这个初始值
until [ ! $i -lt 10 ] # 循环条件:当i小于10时,继续循环
doecho $i((i++)) # i自增
done
  • #!/bin/bash:这是一个shebang行,告诉系统这个脚本应该用bash shell来执行。

  • i=0:这行代码初始化一个变量i并将其值设置为0。

  • until [ ! $i -lt 10 ]:这是一个until循环,它将一直执行,直到条件[ ! $i -lt 10 ]为真。这里的条件是检查变量i是否不小于10(即大于或等于10)。

  • do:关键字,表示循环体的开始。

  • echo $i:打印当前的i值。

  • ((i++)):这是bash中的算术扩展,用于将i的值增加1。

  • done:关键字,表示循环体的结束。

2. case语句

#!/bin/bash
​
read -p "请您输入一个数值: " num # 获取用户输入
​
case $num in1)echo "您输入的数字是1";;2)echo "您输入的数字是2";;*)echo "您输入的是其他数字";;
esac
  • read -p "请您输入一个数值: " num:这行代码使用read命令提示用户输入一个数值,并将输入存储在变量num中。

  • case $num in:这是case语句的开始,它根据变量num的值来执行不同的代码块。

  • 1)2)*):这些是case语句的模式。如果num的值匹配,就执行后面的代码块。

    • 1):如果num的值是1,就执行echo "您输入的数字是1"

    • 2):如果num的值是2,就执行echo "您输入的数字是2"

    • *):星号*是一个通配符,匹配除了1和2之外的所有值。如果num的值既不是1也不是2,就执行echo "您输入的是其他数字"

  • ;;:这是case语句中每个模式块的结束标记。

  • esac:这是case语句的结束标记,esaccase的反向拼写。

3. 基本函数学习

代码1:简单函数定义和调用
#!/bin/bash
​
DemoFunc() {echo "hello world"
}
​
DemoFunc # 调用函数
  • DemoFunc() {:定义了一个名为DemoFunc的函数,大括号{表示函数体的开始。

  • echo "hello world":函数体内的语句,输出字符串hello world

  • }:大括号}表示函数体的结束。

  • DemoFunc:调用DemoFunc函数,执行函数体内的语句。

代码2:函数带参数
#!/bin/bash
​
DemoFunc() {echo "hello world"echo "My name is $1."
}
​
DemoFunc "xiaoyu" # 调用函数并传递参数
  • DemoFunc() {:定义了一个名为DemoFunc的函数。

  • echo "hello world":输出字符串hello world

  • echo "My name is $1.":输出字符串My name is,后面跟着函数的第一个参数($1),这里传递的是xiaoyu

  • DemoFunc "xiaoyu":调用DemoFunc函数,并传递参数xiaoyu

4. 多参数函数调用

#!/bin/bash
​
DemoFunc() {echo "hello world"echo "My name is $1 and my age is $2 years old."
}
​
DemoFunc "xiaoyu" 27 # 调用函数并传递两个参数
  • DemoFunc() {:定义了一个名为DemoFunc的函数。

  • echo "hello world":输出字符串hello world

  • echo "My name is $1 and my age is $2 years old.":输出字符串My name is,后面跟着函数的第一个参数($1),然后是and my age is,最后是第二个参数($2)和years old.。这里传递的参数是xiaoyu27

  • DemoFunc "xiaoyu" 27:调用DemoFunc函数,并传递两个参数xiaoyu27

这些代码示例涵盖了bash脚本中的循环、条件语句和函数的基本用法。希望这些解释能帮助您更好地理解bash脚本的工作原理。如果您有任何疑问或需要进一步的解释,请随时告诉我!

http://www.lryc.cn/news/489834.html

相关文章:

  • python语言基础-5 进阶语法-5.5 上下文管理协议(with语句)
  • 自动驾驶3D目标检测综述(三)
  • 【GESP】C++三级练习 luogu-B3661, [语言月赛202209] 排排
  • 【PPTist】添加PPT模版
  • 大疆上云api开发
  • IDEA2023 SpringBoot整合MyBatis(三)
  • 【Apache Paimon】-- 6 -- 清理过期数据
  • C语言数据结构——详细讲解 双链表
  • Shell脚本基础(4):条件判断
  • 在 Swift 中实现字符串分割问题:以字典中的单词构造句子
  • win10中使用ffmpeg和MediaMTX 推流rtsp视频
  • 16. 【.NET 8 实战--孢子记账--从单体到微服务】--汇率获取定时器
  • C#元组详解:创建、访问与解构
  • wsl2安装
  • android studio无法下载,Could not GET xxx, Received status code 400
  • RUST学习教程-安装教程
  • redis6.0之后的多线程版本的问题
  • python的 pandas.Dataframe 和 pandas.Series基础内容
  • golang学习5
  • 【C语言】11月第二次测试 ing
  • 行列式的理解与计算:线性代数中的核心概念
  • 按出生日期排序(结构体专题)
  • 【C++】拆分详解 - 多态
  • Python世界:力扣题解875,珂珂爱吃香蕉,中等
  • Java设计模式 —— Java七大设计原则详解
  • SpringBoot学习记录(六)配置文件参数化
  • android 使用MediaPlayer实现音乐播放--获取音乐数据
  • .net 8使用hangfire实现库存同步任务
  • 第 22 章 - Go语言 测试与基准测试
  • VB.Net笔记-更新ing