shell编程continue break 函数的return

跳出循环和函数返回值



一、退出循环

在shell编程中,通常退出循环有两种方法:

contine:是结束本次执行的循环,默认是contine 1,当contine 3 时,则表示进入第3层循环;

break:是跳出本次循环,默认是break 1, 当break 2 时,则表示退出第二层循环,进入第3层循环;

因此在循环中:contine n = break n-1


[[email protected] ~/test]#vim for.sh

#!/bin/bash

for i in {1..3};do

for j in {101..103};do

for k in {1001..1003};do

if [ $K -eq 1002 ];than #当执行玩第一轮i=1,j=101,k=1001,输出1001,进入i=1,j=101,k=10

contine 3              02时退出回到,i=2,k=101,k=1001,输出1001,进入i=2,k=101,k=

fi                      1002时退出回到,i=3,依次显示。

echo $K

done

done

done

[[email protected] ~/test]#bash for.sh
1001
1001
1001

——————————————————————————————————————————————————

[[email protected] ~/test]#vim for.sh

#!/bin/bash

for i in {1..3};do

for j in {101..103};do

for k in {1001..1003};do

if [ $K -eq 1002 ];than #当执行玩第一轮i=1,j=101,k=1001,输出1001,进入i=1,j=101,k=10

break 2              02时退出回到,i=2,k=101,k=1001,输出1001,进入i=2,k=101,k=

fi                      1002时退出回到,i=3,依次显示。

echo $K

done

done

done

[[email protected] ~/test]#bash for.sh
1001
1001
1001

二、函数返回值

在函数第一次遇到return时,则跳出函数,类似for循环中的contine;


[[email protected] ~/test]#vim return.sh

#!/bin/bash

Ping (){
   echo "ping 127.0.0.1"
   ping -c1 -w1 127.0.0.1 &>/dev/null && return 10                                                      echo "退出了没有"                                              
   echo "ping 127.0.0.2"
   ping -c1 -w1 127.0.0.2 &>/dev/null && return 20
   echo "ping 127.0.0.3"
   ping -c1 -w1 127.0.0.3 &>/dev/null &&return 30
  }

Ping

[[email protected] ~/test]#bash return.sh

ping 127.0.0.1

[[email protected] ~/test]#echo $?
10

时间: 2024-10-07 05:22:44

shell编程continue break 函数的return的相关文章

shell编程值之函数和select的使用

select   select循环主要用于创建菜单,按数字顺序排列的菜单项将显示在标准错误上,并显示PS3提示符,等待用户的输入,用户输入菜单列表中的某个数字,执行相应的命令,用户输入被保存在变量REPLY中. select是个无限循环,因此要记住用break命令退出循环,或者用exit直接退出脚本,也可以使用ctrl+c退出循环 select语句结构: select 变量 in 选项1 选项2 ;do break done #!/bin/sh PS3="what is you favourit

shell编程:向函数中传递参数

cal.sh sh cal.sh 20 + 10 实现这样传参的函数(shell不是一个严谨的编程语言,参数这种是不用定义的,函数中直接引用,shell执行中直接写) #!/bin/bash # cal() { case $2 in +) echo "`expr $1 + $3`" ;; -) echo "`expr $1 - $3`" ;; \*) echo "`expr $1 \* $3`" ;; /) echo "`expr $1

Shell编程关于函数要注意的几点

今天上午一个朋友突然QQ问到,shell编程中的函数为什么return只能是整数,怎么样才能将函数的执行结果返回并保存至某个变量中.其实这个问题很好解决---只需要认真了解下shell函数即可. shell编程中关于函数需要知道的几点 一.无论是在函数内,还是在函数外,$0的值都是该脚本本身.     [[email protected] ~]# cat test.sh     #!/bin/bash          echo $0          function testFunc(){

shell编程之服务脚本编写,文件锁以及信号捕获

shell脚本编程是linux运维工程师必备的技能,也是非常重要的一个技能,所以把shell编程学好,只有好处.基础语法我也就不讲了,学过C语言这些语言的,稍微看一下就能明白shell编程的基础,所以我们直接切入正题. 开班第20天: 今天的课程大纲: shell编程中的函数 编写一个自动挂载的脚本 利用autofs怎么实现自动挂载 文件锁和信号捕获trap sed流文件编辑器 详细讲解: shell编程中的函数 shell中,我们定义函数的方法有两种: 下面调用的时候,直接调用函数名就可以了

Linux shell break、continue、exit、return的用法

break.continue.exit.return一般用于控制循环的的走向 首先通过一个脚本说明 for ((i=1;i<5;i++ )) do if [ $i -eq 3 ] then #  break #  continue #  exit fi echo $i done echo OK 输出的结果 break的结果 1 2 OK continue的结果 1 2 4 OK exit的结果 1 2 由此可以说明 break n:n表示跳出循环的层数,如果省略n表示跳出整个循环 continu

shell编程中for,while,util,case,select,break, continue用法详解

关于shell脚本的更多详细实例讲解请参考:http://www.cnblogs.com/yuexiaxiaoxi/category/646749.html Shell编程中循环命令用于特定条件下决定某些语句重复执行的控制方式,有三种常用的循环语句:for.while和until.while循环和for循环属于"当型循环",而until属于"直到型循环".循环控制符:break和continue控制流程转向. 参考:<Linux 与unix shell 编程指

shell编程(十五)--- while特殊用法和函数

break:退出循环体 continue:结束本次循环,进入下一次循环. while特殊用法1: while : do done 上述为while的死循环. while特殊用法2: while read LINE do done < /path/to/FILE 作用:通过while读取FILE文件中的每一行,并将其保存在变量LINE中. 函数:function 语法格式: 方法1: function FUNCTIONNAME {     COMMAND } 方法2: FUNCTIONNAME()

(三)Linux Shell编程——Shell常用命令(输出、判断、循环、函数、包含)

3. 常用命令 3.1 输出 3.1.1 echo命令 echo是Shell的一个内部指令,用于在屏幕上打印出指定的字符串.命令格式: echo arg name="coding" echo '$name\"'+" ${name}" #原样输出 $name\"+ coding echo `date` #当前日期 3.1.2 printf命令 printf 命令用于格式化输出, 是echo命令的增强版.它是C语言printf()库函数的一个有限的变

break、continue、exit、return的区别和对比

一:说明 break.continue在条件循环语句及循环语句(for.while.if等)中用于控制程序的走向:而exit则用于种植所有语句并退出当前脚本,除此之外,exit还可以返回上一级程序或命令的执行状态值给当前shell:return类似于exit,只不过return仅用于在函数内部返回函数执行的状态值. break n 如果省略n,则表示跳出整个循环,n表示跳出循环的层数: continue n 如果省略n,则表示跳出本次循环,忽略本次循环的剩余代码,进入循环的下一次循环,n表示退到