shell编程continue break 函数的return

跳出循环和函数返回值

一、退出循环

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

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

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

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

[root@centos7 ~/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

[root@centos7 ~/test]#bash for.sh
1001
1001
1001

――――――――――――――――――――――――――――――――――――――――――――――――――

[root@centos7 ~/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 break 2 1002时退出回到,i=3,依次显示

echo $K

done

done

done

[root@centos7 ~/test]#bash for.sh
1001
1001
1001

二、函数返回值

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

[root@centos7 ~/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

[root@centos7 ~/test]#bash return.sh

ping 127.0.0.1

[root@centos7 ~/test]#echo $?10

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...