云计算大数据——shell教程(for+while)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
本教程将详细介绍 Shell 脚本中最常用的两种循环语句:for 循环和 while 循环。我们将从基本语法入手,通过丰富的实例带你掌握它们的常见用法,并深入探讨各自的适用场景与核心差异。读完本教程,你将能够根据实际需求,灵活、高效地运用 for 和 while 循环来编写健壮的 Shell 脚本,显著提升你的自动化工作效率。
一、for循环
1.1 for循环概述
for循环格式
for((循环初始值; 循环条件; 修改循环条件))
do
循环体代码(会重复执行的程序代码)
done
1.2 for循环两种常用形式:
1.2.1 方式一:用于数值方面的处理
for ((初始值; 限制值; 执行步长))do
程序段done
解释:
- 初始值:循环的起始值(如:i=0)
- 限制值:循环的终止条件(如:i<=5)
- 执行步长:每次循环后的增量变化(如:i++)
在这里插入图片描述


1.2.2方式二
for ((i = 0; i <= 5; i++));
do
echo "$i";
done
案列:


对于列表 cat dog elephant 中的每一个元素,都将其赋值给变量 animal,然后执行循环体中的命令。

其他案例:
案例1:
计算1-100的偶数的和


步长:2 → 相邻两个数的差值(默认步长为 1,可省略不写,比如 {1…5} 等价于 {1…5…1})。
案例2:
随机抽取班级学生(学号)

jw= 是一个变量赋值操作,它的作用是:1.创建一个名为 jw 的变量;2.给这个变量赋值为空字符串(“”)
a=$(date +%N)
获取一个 9 位的随机数字串,并存入变量 a。(这是一种常见的、简单的生成随机数的方法。)
b=$(expr $a % 39)
将上一步得到的大随机数 a 对 39 取模,从而得到一个范围在 0 到 38 之间的整数。这个范围非常重要,因为它正好对应一个包含 39 个元素的数组的索引(数组索引从 0 开始)。


.
案例4
######统计/var/log 有多少个文件,并显示这些文件名


小结:
循环流程: 在程序执行过程中,针对某行或某段代码进行重复性的执行,至到循环条件不满足,才
会结束重复执行操作
方式1:从指定的起始值开始循环,至到循环上限结束
方式2:从一些数据集中,依次取出每一个数据进行操作,至到从数据集中取完所有数据
二、while 循环
2.1 while 条件原理
重复测试某个条件,只要条件成立则反复执行
while [ expression ]
do
command
…
修改while中的循环条件
done

方式一
在变量 y 的值不等于 yes 且不等于 YES 时,持续执行循环体
方式二
i=1
while((i<=3))
do
echo $i
let i++
done
let 命令是 BASH 中用于计算的工具,用于执行一个或多个表达式,变量计算中不需要加上 $ 来表示变量。
自加操作: let no++
自减操作: let no--


方式三: 无限循环(死循环)
while true
do
command
Done

总结
循环的本质是自动化重复劳动。掌握 for 和 while 的精髓,在于理解 “如何定义重复的范围”和“如何控制重复的终止”。for 循环通过 “列表” 来定义范围,while 循环通过 “条件” 来控制终止。。
更多推荐
所有评论(0)