shell编程-for循环-while循环-until循环基础

1. for循环

for循环用于在指定次数的范围内反复执行一段代码。通常可以基于一个固定的数值范围、数组或列表来进行循环。

语法

for variable in value1 value2 value3 ... do # 循环体代码 done

  • variable 是你在循环中使用的变量。
  • value1, value2, value3,... 是一个值的列表,variable 会依次取这些值。
  • 每次循环时,variable 会从值列表中取出一个新的值,并执行 dodone 之间的代码。
eg、

for i in 1 2 3 4 5

do

echo "当前数字是: $i"

done

输出:

当前数字是: 1 当前数字是: 2 当前数字是: 3 当前数字是: 4 当前数字是: 5

eg、循环1至100;

使用范围或步骤

如果你需要指定一个数字范围,可以用大括号表示,例如:

for i in {1..5} do echo "当前数字是: $i" done

或者你可以指定步长:

for i in {1..10..2} do echo "当前数字是: $i" done

这会输出 1, 3, 5, 7, 9

2. while循环

while循环会在条件满足的情况下反复执行循环体。每次执行前,Shell会判断条件是否成立,若条件成立,则继续执行循环体;否则退出循环。

语法

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

  • condition 是一个测试条件,通常使用方括号 [] 包裹。
  • condition 为真时,执行 dodone 之间的代码。
eg、

i=1

while [ $i -le 5 ]

do

echo "当前数字是: $i" ((i++)) # i递增

done

输出:

当前数字是: 1 当前数字是: 2 当前数字是: 3 当前数字是: 4 当前数字是: 5

解释
  • i=1 初始化变量 i 为 1。
  • [ $i -le 5 ] 这是条件测试,表示当 i 小于或等于 5 时,继续循环。
  • ((i++)) 是自增操作,将 i 增加 1。

eg、

3. until循环

until 循环与 while 循环类似,不同之处在于 until 循环会在条件 不成立 时继续执行,直到条件为真时才停止。

语法

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

示例

i=1

until [ $i -gt 5 ]

do

echo "当前数字是: $i" ((i++))

done

输出:

当前数字是: 1 当前数字是: 2 当前数字是: 3 当前数字是: 4 当前数字是: 5

相关推荐
郝学胜-神的一滴18 小时前
干货版《算法导论》17:二叉树核心原理、遍历逻辑与高阶实操全解
数据结构·c++·python·算法·计算机·编程
程序员鱼皮1 天前
刚刚 DeepSeek V4 Pro 正式发布,夯还是拉?首发实战测评
前端·人工智能·后端·ai·编程·ai编程·deepseek
云空4 天前
《完整开源魔方项目分类清单(按用途/语言划分,含GitHub地址、核心能力、适用场景)》
开源·编程·魔方
码字的特恩4 天前
微软确认暂不为 Windows 11 加入透明效果自定义功能,建议用户使用第三方工具
人工智能·windows·算法·microsoft·计算机·大模型·编程
云空4 天前
《软件专业完整学习路线图(本科4年+自学通用版,2026就业向)》
人工智能·科技·学习·计算机·编程·软件
noipp13 天前
推荐题目:洛谷 P3726 [AHOI2017/HNOI2017] 抛硬币
c语言·数据结构·c++·算法·编程·洛谷·luogu
码字的特恩15 天前
GPT-5.6自己优化自己实锤了,新的左脚踩右脚已经出现
人工智能·gpt·深度学习·算法·大模型·互联网·编程
Jay-r15 天前
手势粒子特效系统 Gesture Particle FX(附源码下载)
python·ai·编程·pygame·百度云·手势控制
大模型momo15 天前
AI 编程工程化:从 Prompt 到 Harness
人工智能·prompt·编程·agent
码字的特恩17 天前
AI Agent Skill 工程化 09:让 Skill 自己变好——走向自进化流水线
人工智能·计算机·ai·程序员·大模型·互联网·编程