【Linux】结构化命令:控制循环

一、break命令

可以使用break命令退出任意类型的循环,比如while和until循环。

1、跳出单个循环

bash 复制代码
#!/bin/bash
#for循环

for var1 in 1 2 3 4 5 6 7 8
do
  if [ $var1 -eq 6 ]
  then
     break
  fi
  echo "迭代数字是$var1"
done 

#while循环

var1=0

while [ $var1 -lt 8 ]
do
  if [ $var1 -eq 6 ]
  then
    break
  fi
  echo "迭代数字:$var1"
  var1=$[ $var1 + 1 ]
done

2、跳出内层循环

bash 复制代码
#!/bin/bash
for (( a = 1; a < 6; a++ ))
do
  echo "外层循环:a=$a"
  for (( b = 1; b < 50; b++ ))
  do
    if [ $b -eq 10 ]
    then
       break
    fi
    echo "   内层循环:b=$b"
  done
done

3、跳出外层循环

break命令接受单个命令行参数:break n

n是要跳出的循环层级;默认为1,表示当前循环层级;若n=2,则为下一级的外层循环。

bash 复制代码
#!/bin/bash
for (( a = 1; a < 6; a++ ))
do
  echo "外层循环:a=$a"
  for (( b = 1; b < 20; b++ ))
  do
    if [ $b -gt 6 ]
    then
      break 2
    fi
    echo "  内层循环:b=$b"
  done
done

二、continue命令

continue命令可以提前中止某次循环,但不会结束整个循环。

bash 复制代码
#!/bin/bash

for (( a = 1; a < 20; a++ ))
do
  if [ $a -gt 5 ] && [ $a -lt 11 ]
  then
    echo "会打印出来!"
    continue
    echo "不会打印出来!!"
  fi
  echo "迭代数字是:$a"
done
相关推荐
一个王同学2 分钟前
从零到一 | CV转多模态大模型 | week12 | 整理 MiniLLaVA 工程与文档
人工智能·深度学习·算法·机器学习·计算机视觉
一只鹿鹿鹿7 分钟前
网络安全评估方案
java·大数据·运维·物联网·web安全
这料鬼有毒8 分钟前
二刷hot100-78.子集
算法·leetcode·职场和发展
路由侠内网穿透26 分钟前
本地部署开源自托管服务器监控系统哪吒监控并实现外部访问
运维·服务器·网络协议
ZHW_AI课题组31 分钟前
使用DBSCAN算法对纽约市 Airbnb 房源数据集进行聚类分析
算法
友莘居士42 分钟前
KingbaseES Docker速查表
运维·docker·容器
阳光满路1 小时前
三步搞定:Linux 安装配置 Telnet 服务
linux·运维·centos
Sunny_20228371 小时前
有些CAD图形能显示却打印不出来
运维·pccad插件、cad·pccad个人免费版·免费cad插件
码农编程录1 小时前
【notes9】
linux