从0开始学习Linux——Shell编程详解【03】

news/2024/11/24 3:11:51/

 期目录:

从0开始学习Linux——简介&安装

从0开始学习Linux——搭建属于自己的Linux虚拟机

从0开始学习Linux——文本编辑器

从0开始学习Linux——Yum工具

从0开始学习Linux——远程连接工具

从0开始学习Linux——文件目录

从0开始学习Linux——网络配置

从0开始学习Linux——防火墙配置

从0开始学习Linux——系统服务管理

从0开始学习Linxu——系统常用命令

从0开始学习Linux——进程管理

从0开始学习Linux——用户管理

从0开始学习Linux——文件管理

从0开始学习Linux——Shell编程详解【01】

从0开始学习Linux——Shell编程详解【02】

上期教程我们学习了Shell编程中的数据类型、运算符等知识点,这期教程我们将学习控制语句。

Shell 提供了多种控制语句来帮助我们控制程序的流程。控制语句可以分为 条件判断语句、循环语句 和 跳转语句 等几类。

 一、条件判断语句

条件判断语句用于根据某个条件的真假来决定执行不同的代码块。常用的条件判断语句有if、if-else、if-elif-else和case。

1.1 if语句

if [ 条件判断语句 ]; then如果为真就执行代码
fi

上述代码中"[条件判断语句]"可以通过变量和上期教程所学的运算符进行组合。

1.2 if-else语句

if [ 条件判断语句 ]; then如果为真就执行代码
else如果为假就执行代码
fi

1.3 if-elif-else语句

if [ 条件判断语句1 ]; then如果条件判断语句1为真就执行代码
elif [ 条件判断语句2 ]; then如果条件判断语句2为真就执行代码
else如果两个条件判断语句都为假就执行代码
fi

注意:if、elif、else语句可以灵活的进行组合。

 1.4 case语句

case语句可以根据不同的模式来执行不同的代码块,通常用于替代多个if-elif-else判断。

case $变量 in匹配1)符合匹配1选项就执行代码;;匹配2)符合匹配2选项就执行代码;;*)符合匹配3选项就执行代码;;
esac

二、循环语句

循环语句用于重复执行代码块,直到满足特定条件。常见的循环语句有for、while和until。

2.1 for循环

for循环用于在特定的范围或集合中遍历元素。

for var in list; do循环体代码
done

2.2 while循环

while循环会一直执行,直到条件不再满足。

while [ condition ]; do循环体代码
done

 2.3 util循环

utils循环和while循环类似,但它会在条件为“假”时执行代码块。

until [ condition ]; do循环体代码
done

 2.4 循环结束

如果我们想要在某个时候去结束循环语句,我们可以使用break、continue、exit关键字。

2.4.1 break关键字

break关键字用于跳出当前的循环,通常在满足某些条件时停止循环。

 注意:break关键字用于结束离break关键字最近的循环。

2.4.2 continue关键字

continue关键字用于跳过当前的循环迭代,直接进入下一次迭代。

 2.4.3 exit关键字

exit关键字用于退出整个脚本,可以指定退出码。

补充:辨析(())和[]

  • [...]是用于常规的字符串、数值或文件条件测试。
  • ((...))是用于数值计算和条件判断的,例如(i % 2 )或 (i % 2 == 0)。

 本节教程就先到这里,更多内容将在后续教程中展示出来。


http://www.ppmy.cn/news/1549431.html

相关文章

Unity Shader常见函数 内置Built-in/URP等效函数

简介: Unity Shader的URP中的函数与Built-in中的是不一样的,升级URP之后,基本都提供了平替的函数 Built-in 内置渲染管线函数URP 通用渲染函数TRANSFORM_TEX(uv, textureName)TRANSFORM_TEX(uv, textureName)tex2D, tex2Dlod, 等SAMPLE_TEXT…

flume-将日志采集到hdfs

看到hdfs大家应该做什么? 是的你应该去把集群打开, cd /export/servers/hadoop/sbin 启动集群 ./start-all.sh 在虚拟机hadoop02和hadoop03上的conf目录下配置相同的日志采集方案,‘ cd /export/servers/flume/conf 切换完成之后&#…

Github工作流

GitHub 工作流 是一种专门为 GitHub 上的代码协作和版本控制而设计的工作流,它强调通过 **拉取请求(Pull Request,PR)** 来管理代码的合并和审查。GitHub 工作流通常涉及到使用 **分支** 来进行功能开发和修复,并通过 …

缓冲区的奥秘:解析数据交错的魔法

目录 一、理解缓存区的好处 (一)直观性的理解 (二)缓存区的好处 二、经典案例分析体会 (一)文件读写流(File I/O Buffering) BufferedOutputStream 和 BufferedWriter 可以加快…

Flutter:AnimatedSwitcher当子元素改变时,触发动画

AnimatedSwitcher中的子元素 由:CircularProgressIndicator() 改变为:Image.network(https://cdn.uviewui.com/uview/swiper/1.jpg) 则会触发动画class _MyHomePageState extends State<MyHomePage> {bool flag true;overrideWidget build(BuildContext context) {retur…

百度Q3财报:净利润增长17%超预期 文心大模型日调用量增30倍达15亿

发布 | 大力财经 11月21日晚&#xff0c;百度发布2024年第三季度财务报告&#xff0c;显示季度总营收336亿元&#xff0c;百度核心营收265亿元&#xff0c;归属百度核心的净利润75.4亿元&#xff0c;同比增长17%&#xff0c;超出市场预期。财报显示&#xff0c;11月&#xff0…

Excel常用技巧分享

excel单元格内换行 直接按回车会退出当前单元格的编辑&#xff0c;如果需要在单元格中换行&#xff0c;需要按下AltEnter。 excel插入多行或多列 WPS 在WPS中想要插入多行&#xff0c;只需在右键菜单中输入对应的数字即可。 Office Excel excel中相对麻烦一些&#xff0c;比…

web——sqliabs靶场——第九关——时间盲注

什么是时间盲注 时间盲注是指基于时间的盲注&#xff0c;也叫延时注入&#xff0c;根据页面的响应时间来判断是否存在注入。 使用sqlmap不同的技术 sqlmap --technique 参数用来设置具体SQL注入技术 B: Boolean-based blind 基于布尔的忙逐步 E:Error-based 报错注入 U&am…