shell脚本之break和continue

shell脚本之break和continue

break的用法

break [n]:用于跳出循环。其中,n表示要跳出的循环层数。如果不接任何数字,则默认跳出当前循环。

跳出所有循环:不带任何参数的break命令会立即终止脚本的执行,跳出所有循环。

跳出指定层循环:通过指定n的值,break命令可以跳出指定层级的循环。例如,break 2表示跳出第2层循环。但这种用法并不常见,因为通常会用其他方式指定循环的终止条件。

例如:

bash 复制代码
#!/bin/bash  
  
for i in {0..10}; do  
    if [ $i -eq 2 ]; then  
        break
    fi  
    echo "当前数字:$i"  
done

在上述示例中,当$i等于2时就会中断for循环,所以脚本最终输出0和1

continue的用法

continue [n]:用于跳过当前循环迭代,并继续执行下一次循环。其中,n表示要跳过的循环层数。如果不接任何数字,则默认跳过当前循环。

跳过当前循环:不带任何参数的continue命令会跳过当前循环的剩余部分,直接进入下一次循环。

跳过指定层循环:通过指定n的值,continue命令可以跳过指定层级的循环。例如,continue 2表示跳过第2层循环。但这种用法并不常见,因为通常会用其他方式指定循环的终止条件。

例如:

bash 复制代码
#!/bin/bash  
  
for i in {1..10}; do  
    if [ $((i % 2)) -eq 1 ]; then  
        continue  
    fi  
    echo "当前数字:$i"  
done

在上述示例中,当 (i % 2) 的结果为1时(即数字为奇数),continue命令会停止当前循环迭代,直接跳到下一次循环。如果不使用continue命令,那么脚本将输出1到10的所有数字。使用continue命令后,脚本只输出偶数。

相关推荐
赖small强2 分钟前
【Linux 进程管理】Linux 可执行程序运行机制深度解析
linux·可执行程序
casdfxx4 分钟前
配置v3s支持8188eu、8192cu网卡(三)-openssh不能登录linux开发板。
linux·服务器·网络
遇见火星7 分钟前
Linux 服务器被入侵后,如何通过登录日志排查入侵源?【实战指南】
linux·运维·服务器·入侵·日志排查
凤凰战士芭比Q12 分钟前
(一)zabbix7.0(安装、自定义监控、告警)
linux
gis分享者17 分钟前
如何在 Shell 脚本中使用管道(pipeline)实现数据传递?(容易)
linux·pipeline·shell·脚本·管道·数据传递
model200523 分钟前
Alibaba linux 3安装LAMP(2)
linux·运维·服务器
喵了meme28 分钟前
Linux学习日记16:守护进程
linux·服务器·学习
一匹电信狗32 分钟前
【Linux我做主】进程实践:手动实现Shell
linux·运维·服务器·c++·ubuntu·小程序·开源
BUG_MeDe42 分钟前
Linux 下VRF的简单应用
linux·运维·服务器
Sleepy MargulisItG1 小时前
Linux 基础指令详解(常用)
linux