Shell编程学习之break&continue&return的应用

  • Shell编程中的break关键字:
  • break关键字:退出最近的循环,后续循环不再执行;
  • break关键字用法:
break         #结束本层循环
break 数字n   #结束n层循环
  • 测试代码1:
#!/bin/bash

for((i=1;i<6;i++))
do
   for((j=1;j<6;j++))
   do
     
      if [ $j -eq 4 ]
      then
          
          break 

       fi
       echo $i+$j

   done
done
  • 运行结果1:
1+1
1+2
1+3
2+1
2+2
2+3
3+1
3+2
3+3
4+1
4+2
4+3
5+1
5+2
5+3
  • 测试代码2:
#!/bin/bash

for((i=1;i<6;i++))
do
   for((j=1;j<6;j++))
   do
     for((k=1;k<6;k++))
     do
        if [ $k -eq 4 ]
        then
          
           break 2

        fi
        echo $i+$j+$k
      done
   done
done


  • 运行结果2:
1+1+1
1+1+2
1+1+3
2+1+1
2+1+2
2+1+3
3+1+1
3+1+2
3+1+3
4+1+1
4+1+2
4+1+3
5+1+1
5+1+2
5+1+3
  • Shell编程中的continue关键字:
  • continue关键字:使用后,后面的代码不再执行,但是依然执行下一次的循环;
  • continue关键字用法:
continue        #结束本层本次循环
continue 数字n  #结束n层的本次循环
  • 测试代码1:
#!/bin/bash


for((j=1;j<5;j++))
do
     for((k=1;k<5;k++))
     do
        if [ $k -eq 3 ]
        then
          
           continue

        fi
        echo $j+$k
      done
done



  • 运行结果1:
1+1
1+2
1+4
2+1
2+2
2+4
3+1
3+2
3+4
4+1
4+2
4+4
  • 测试代码2:
#!/bin/bash

for((i=1;i<5;i++))
do
   for((j=1;j<5;j++))
   do
     for((k=1;k<5;k++))
     do
        if [ $k -eq 3 ]
        then
          
           continue 2

        fi
        echo $i+$j+$k
      done
   done
done
  • 运行结果2:
1+1+1
1+1+2
1+2+1
1+2+2
1+3+1
1+3+2
1+4+1
1+4+2
2+1+1
2+1+2
2+2+1
2+2+2
2+3+1
2+3+2
2+4+1
2+4+2
3+1+1
3+1+2
3+2+1
3+2+2
3+3+1
3+3+2
3+4+1
3+4+2
4+1+1
4+1+2
4+2+1
4+2+2
4+3+1
4+3+2
4+4+1
4+4+2
  • Shell编程中的return关键字:
  • return关键字:可用于Shell编程中函数的返回值,
  • 特别注意:
  • 1.这种方式的函数返回值是有范围的,0~255;
  • 2.需要在函数调用处,使用位置变量$?,该位置变量的作用是:判断上一条命令执行是否成功,结果为0,则成功,为1,则失败;
  • return关键字用法:
return $变量
  • 测试代码:
#!/bin/bash

function my_mul(){

    KEY=$(( $1 * $2 ))
    return $KEY
}

my_mul 15 15
echo $?
  • 运行结果:
225
  • 总结:
  • 可以类比C语言break、continue、return进行学习;
  • 详见本人原创博客链接:
https://blog.csdn.net/qq_41878292/article/details/132238621?spm=1001.2014.3001.5502

你可能感兴趣的:(Shell编程学习系列,学习,shell,linux,脚本,服务器,嵌入式硬件)