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

shell基础-for\while\break

在 Shell 脚本中,for 循环和 while 循环是非常常见的控制结构,用于重复执行一组命令。同时,breakcontinue 语句可以用来控制循环的执行流程。下面详细介绍这些内容。

for 循环

基本语法
for 变量 in 列表; do
    # 循环体
done
示例 1:遍历列表
#!/bin/bash

# 遍历一个列表
for i in 1 2 3 4 5; do
    echo "Number: $i"
done
示例 2:遍历文件中的每一行
#!/bin/bash

# 遍历文件中的每一行
while IFS= read -r line; do
    echo "Line: $line"
done < file.txt

while 循环

while 条件表达式; do
    # 循环体
done
示例 1:简单的 while 循环
#!/bin/bash

# 初始化计数器
i=1

# 使用 while 循环
while [ $i -le 5 ]; do
    echo "Number: $i"
    i=$((i + 1))
done

控制循环的语句

break 语句

break 语句用于立即退出当前循环。

示例 1:使用 break 语句
#!/bin/bash

# 使用 for 循环和 break 语句
for i in 1 2 3 4 5; do
    if [ $i -eq 3 ]; then
        break
    fi
    echo "Number: $i"
done
continue 语句

continue 语句用于跳过当前循环的剩余部分,直接进入下一次循环。

示例 2:使用 continue 语句
#!/bin/bash

# 使用 for 循环和 continue 语句
for i in 1 2 3 4 5; do
    if [ $i -eq 3 ]; then
        continue
    fi
    echo "Number: $i"
done

综合示例

示例 1:结合 for 循环、while 循环、break 和 continue
#!/bin/bash

# 使用 for 循环和 break 语句
for i in 1 2 3 4 5; do
    if [ $i -eq 3 ]; then
        echo "Breaking at $i"
        break
    fi
    echo "For loop: Number $i"
done

# 使用 while 循环和 continue 语句
j=1
while [ $j -le 5 ]; do
    if [ $j -eq 3 ]; then
        echo "Skipping $j"
        j=$((j + 1))
        continue
    fi
    echo "While loop: Number $j"
    j=$((j + 1))
done

总结

  • for 循环:用于遍历一个列表或执行固定次数的循环。
  • while 循环:用于在条件为真时重复执行一段代码。
  • break 语句:用于立即退出当前循环。
  • continue 语句:用于跳过当前循环的剩余部分,直接进入下一次循环。

http://www.kler.cn/a/373631.html

相关文章:

  • Java阶段三02
  • ubuntu基于docker-compose部署mysql5.7和mysql8.0
  • 斐波那契时间序列,精准捕捉市场拐点 MT4免费公式源码!
  • Ubuntu18.04安装velodyne驱动
  • 开源Verilog EDA工具--iverilog+GTKWave
  • Java接入Hive
  • 使用Scrapy框架爬取博客信息
  • 深度学习:梯度下降算法简介
  • Spring学习笔记_16——@Inject
  • Es可视化界面 ElasticHd
  • 杂货 | 每日资讯 | 2024.10.31
  • 远程工作时代的文件安全管理挑战与机遇
  • 尚硅谷-react教程-求和案例-优化2-Provider组件的使用-笔记
  • 用ChatGPT提升工作效率:从理论到实际应用
  • 贪心算法入门(一)
  • axios post请求body为字符串时的解决方法
  • 数理逻辑/逻辑哲学 小记
  • 【算法】【优选算法】双指针(上)
  • 鸿蒙开发融云demo发送图片消息
  • 正则表达式:文本处理的强大工具
  • docker load镜像失败,提示没有足够的空间,处理办法
  • 38.第二阶段x86游戏实战2-HOOK窗口消息机制(解决多开窗口句柄问题)
  • 【渗透测试】01-信息收集-名词概念
  • 和鲸科技同南京大学地理与海洋科学学院签署和鲸“101 数智领航计划”合作协议,助力“地理海洋科学+AI”人才培养
  • 蚂蚁Ant Design:设计师的理想工具
  • Rust 力扣 - 189. 轮转数组