shell函数之双重循环

本文详细介绍了Shell脚本中的双重循环结构、特殊操作如exit、break、continue,并通过示例展示了如何使用它们。此外,还展示了如何用Shell绘制多种图形,包括直线、矩形、三角形等,以及双重循环的应用,如IP地址到二进制转换和查找PATH目录下的可执行文件。
摘要由CSDN通过智能技术生成

一  简介

双重循环需勋在两个及以上的自变量,一般用于多层循环判断中,比如将行和列设为两个自变量按一定规则顺序显示数据,可通过Shell脚本做出各种排列图形以及九九乘法表。

二  结构类型

内层循环是外层循坏的一条循环语句,当变量满足外层循环的条件时,就会进入外层循环执行外层循环语句,当变量满足内层循环的条件时,转而执行内层循环,只有当内层循环结束才会跳出内层循环,然后继续外层循环语句的执行。

三  特殊操作

        1.exit

                停止循环,直接退出执行脚本

        2.break

                跳出当前循环,默认为break1。数字为跳出层数,例如break4就是跳出四层循环

        3.continue

                表示结束本次循环,进行下一次循环,而不终止整个循环的执行。

四  示例

        ①双重循环

#!/bin/bash
a=1
while [ $a -le 3 ]
do
 b=1
   echo "外部循环:a=$a"
 while [ $b -le 5 ]
 do
    echo "      内部循环:b=$b"
  let b++
 done
 let a++
done

         ②使用exit

 #!/bin/bash
for ((a=1; a<=3; a++))
do
  echo "外部循环:a=$a"
 for ((b=1; b<=3; b++))
         do
                   echo "       内部循环: b=$b"
          if [ $b -eq 3 ]
          then
          exit
          fi
         done
done

         ③使用break

 #!/bin/bash
for ((a=1; a<=4; a++))
do
  echo "外部循环:a=$a"
 for ((b=1; b<=4; b++))
 do
   echo "    内部循环:b=$b"
  if [ $b -eq 3 ]
  then
  break
  fi
 done
done

        break后面不添加数字,默认跳出当前循环。后面数字是多少,便是跳出多少循环。

        ④continue 

 #!/bin/bash
a=1
while

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值