shell编程continue break 函数的return

前端之家收集整理的这篇文章主要介绍了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

猜你在找的Bash相关文章