Shell脚本之break,continue,和exit区别

Linux脚本中的break continue exit return

break
结束并退出循环

continue
在循环中不执行continue下面的代码,转而进入下一轮循环

exit
退出脚本,
常带一个整数给系统,如 exit 0

return
在函数中将数据返回
或返回一个结果给调用函数的脚本

我理解为:break是立马跳出循环;continue是跳出当前条件循环,继续下一轮条件循环;exit是直接退出整个脚本

例如:

在循环过程中,有时候需要在未达到循环结束条件时强制跳出循环,Shell使用两个命令来实现该功能:break和continue。

break命令

break命令允许跳出所有循环(终止执行后面的所有循环)。

下面的例子中,脚本进入死循环直至用户输入数字大于5。要跳出这个循环,返回到shell提示符下,需要使用break命令。

复制代码 代码如下:

#!/bin/bash
while :
do
    echo -n "Input a number between 1 to 5: "
    read aNum
    case $aNum in
        1|2|3|4|5) echo "Your number is $aNum!"
        ;;
        *) echo "You do not select a number between 1 to 5, game is over!"
            break
        ;;
    esac
done

continue

continue命令与break命令类似,只有一点差别,它不会跳出所有循环,仅仅跳出当前循环。

对上面的例子进行修改:

代码如下:

#!/bin/bash
while :
do
    echo -n "Input a number between 1 to 5: "
    read aNum
    case $aNum in
        1|2|3|4|5) echo "Your number is $aNum!"
        ;;
        *) echo "You do not select a number between 1 to 5!"
            continue
            echo "Game is over!"
        ;;
    esac
done

运行代码发现,当输入大于5的数字时,该例中的循环不会结束,语句

代码如下:

echo "Game is over!"

永远不会被执行。

时间: 2024-08-27 21:50:35

Shell脚本之break,continue,和exit区别的相关文章

PHP中跳出循环break,continue,return,exit的区别

1. return 语句的作用 (1) return 从当前的方法中退出,返回到该调用的方法的语句处,继续执行. (2) return 返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声明中的返回值的类型一致. (3) return后面也可以不带参数,不带参数就是返回空,其实主要目的就是用于想中断函数执行,返回调用函数处. 2.  break 语句的作用 (1)break在循环体内,强行结束循环的执行,也就是结束整个循环过程,不在判断执行循环的条件是否成立,直接转向循环语句下面的语句.

Shell脚本循环语句——continue与break

continue与break常用于while.until.select循环语句中,指定条件下退出本轮循环或者所有循环,需要我们用实例去验证运行结果,就好理解了.但凭看文字介绍确实不怎么好理解. continue用法 continue用于循环体中continue [N]:提前结束第N层的本轮循环,而直接进入下一轮判断:最内层为第1层 while CONDTIITON1; do CMD1 ... if CONDITION2; then continue fi CMDn ... done 实例演示:#

shell脚本中反引号与$()的区别

反引号与$()的区别: 我们先来看一个例子: 创建一个名为test.sh的文件,在文件中输入如下两条指令 运行结果如下: 为什么这两条语句运行结果不一样呢? 这是一个非常有意思的问题,但要解释这个问题确比较困难,我来换一个简单一点的例子,通俗的解释一下. 比如我们有一个shell脚本名为test1.sh有以两行 我们可以使用sh -x test1.sh来分析bash是如何来解释这个脚本的,返回的信息如下: 通过上图我们可以得出两个结论: 1. 反引号中\$并没有将$的特殊意义转换 反引号包含的内

流程控制之 break ,continue,return的区别

首先文字描述一下区别: break 为终止当前循环.跳出当前循环,但是后面的语句(即当前方法中当前循环之外后面的语句)还是会执行. continue 为停止本次循环,继续执行后面的循环.当然后面的语句还是会执行 return  为终止当前循环(跟break很像),跳出当前方法. 看概念是不是不容易明白,下面直接撸代码.简单明了 public class Test { public static void main(String[] args) { for(int i=1;i<4;i++){ Sy

break,continue,return的区别

1)break 作用:跳过当前一个循环体 eg1: <pre name="code" class="php"><pre name="code" class="php" style="font-size: 12px;"><?php <span style="color:#330033;">for</span>($a=1;$a<10

Java中 break continue return 的区别

1.break break :跳出当前循环:但是如果是嵌套循环,则只能跳出当前的这一层循环,只有逐层break才能跳出所有循环: for (int i = 0; i < 10; i++) { if (i == 6) { break; // 在执行i==6时强制终止循环,i==6不会被执行 } System.out.println(i); } 输出结果为0 1 2 3 4 5 :6以后的都不会输出 2.continue continue:终止当前循环,但是不跳出循环(在循环中continue后面的

while循环中,break,continue,return的区别

break 结束循环,跳出循环体: continue 结束本次循环,进行下次循环: return 跳出循环体所在的方法,相当于跳出循环体. 版权声明:本文为博主原创文章,未经博主允许不得转载.

C# break continue return 的区别

static void Main(string[] args) { Console.WriteLine("使用break退出循环"); for(int i = 0; i < 5; i++) { if (i == 2) { break; } Console.WriteLine(i); } Console.WriteLine("使用continue退出循环"); for (int i = 0; i < 5; i++) { if (i == 2) { cont

break continue return 的区别

1. break 直接结束一个循环,跳出循环体,不再执行循环体中代码, 循环体外面的会执行. 2.continue t终止当前循环,继续下一个循环, continue 后面的语句在当前循环中不会执行, 下次循环继续执行, 循环体外面的也会执行 3.return  return 的功能是结束一个方法, 在循环体中执行return 将会结束该方法,循环自然也就结束,不管这个 return 嵌套的多深 原文地址:https://www.cnblogs.com/buxiugangzi/p/1207618