python break continue return_一篇博客分清shell中的状态返回值-return-break-continue-exit

一篇博客分清shell中的状态返回值-return-break-continue-exit

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

条件与循环控制及程序返回值命令知识表命令说明

break n如果省略n,则表示跳出整个循环,n表示跳出循环的层数

continue n如果省略n,则表示跳出本次循环,忽略本次循环剩余代码,进入循环的下一次循环。n表示退到第n层继续循环

exit n表示退出当前shell程序,n为上一次程序执行的状态返回值,n也可以省略,在下一个shell里可以通过“$?”接收exit n的n值。

return n用于在函数里作为函数的返回值,以判断函数执行是否正确,在下一个shell里可通过“$?”接收exit n的n值

二、break、continue、exit功能执行流程图

1、在循环中break功能的执行流程逻辑图

e6e2f23ba76677140424c54a5c3670b9.png

6b116031917ad21452632398f064938b.png

2、在循环中bcontinue功能的执行流程逻辑图

64932a2ac84fc010fa7fbefb0a6dd9ba.png

a912d86b7a16e75a3b3b6ddba0dafdbd.png

3、在循环中exit功能的执行流程逻辑图

24f85c54ee310e92e9ee3f64251ae989.png

413c4ed573d34cbacfdabe7ac70e7637.png

三、用一个小脚本区分break、continue、exit、return[root@xuegod63 ~]# vim 3.sh

#!/bin/bash

#

#User : Mobanche

#Date : 2017-8-1

#Description :This shell script is used primarily to identify the state

#             return value of a loop control that is distinguished from

#             the return-break-continue-exit

if [ $# -ne 1 ]

then

echo "usage: {conntiue|break|exit|return}"

exit 1

fi

test () {

for ((i=1;i<=5;i++))

do

if [ $i -eq 3 ]

then

$*

fi

echo $i

done

echo "I am function"

}

test $*

func_ret=$?

if [ `echo $*|grep return|wc -l` -eq 1 ]

then

echo "return's exit status :$func_ret"

fi

echo OK

测试:

abb8422c81650da0aa748654e0d98096.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值