linux 脚本continue,Shell break和continue语句的用法

在循环的过程中有两个命令可以控制循环,分别是 break 命令和 continue 命令。

Shell break语句

break 命令允许跳出所有的循环,包括 while 和 until 循环。

【例 1】跳出单个循环。

使用 Vim 编辑器打开脚本文件 test.sh,输入 i 命令进入插入模式,输入以下命令:

#!/bin/bash

for var1 in 1 2 3 4 5 6

do

if [ $var1 -eq 5 ]

then

break

fi

echo "var1: $var1"

done

echo "exit"

使用 sh(Bash)进程来执行脚本文件,输出结果为:

[root@bogon ~]# sh test.sh

var1: 1

var1: 2

var1: 3

var1: 4

exit

【例 2】跳出内部循环。

使用 Vim 编辑器打开脚本文件 test.sh,输入 i 命令进入插入模式,输入如下命令:

#!/bin/bash

for (( a=1; a<4; a++ ))

do

echo "outer: $a"

for(( b=1; b<50; b++ ))

do

if [ $b -eq 5 ]

then

break

fi

echo "inner loop: $b"

done

done

使用 sh(Bash)进程来执行脚本文件,输出结果为:

[root@bogon ~]# sh test.sh

outer: 1

inner loop: 1

inner loop: 2

inner loop: 3

inner loop: 4

outer: 2

inner loop: 1

inner loop: 2

inner loop: 3

inner loop: 4

outer: 3

inner loop: 1

inner loop: 2

inner loop: 3

inner loop: 4

从输出结果中可以看出,内部循环里的 for 语句表示当变量 b 等于 50 时停止迭代,而内部循环的 if-then 语句表示当变量 b 的值为 5 时执行 break 命令。当内部循环通过 break 命令停止时,外部循环仍然继续执行。

【例 3】跳出外部循环。

使用 Vim 编辑器打开脚本文件 test.sh,输入 i 命令进入插入模式,输入如下命令:

#!/bin/bash

for (( a=1; a<4; a++ ))

do

echo "outer: $a"

for(( b=1; b<50; b++ ))

do

if [ $b -eq 4 ]

then

break 2

fi

echo "inner loop: $b"

done

done

使用 sh(Bash)进程来执行脚本文件,输出结果为:

[root@bogon ~]# sh test.sh

outer: 1

inner loop: 1

inner loop: 2

inner loop: 3

Shell continue语句

continue 命令可以提前终止某次循环的命令,但并不能完全终止整个循环。

【例 4】for 循环中使用 continue 命令。

使用 Vim 编辑器打开脚本文件 test.sh,输入 i 命令进入插入模式,输入如下命令:

#!/bin/bash

for (( var1=1; var1<15; var1++ ))

do

if [ $var1 -gt 5 ] && [ $var1 -lt 10 ]

then

continue

fi

echo "num: $var1"

done

使用 sh(Bash)进程来执行脚本文件,输出结果为:

[root@bogon ~]# sh test.sh

num: 1

num: 2

num: 3

num: 4

num: 5

num: 10

num: 11

num: 12

num: 13

num: 14

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值