zoukankan      html  css  js  c++  java
  • 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!"


    永远不会被执行。

  • 相关阅读:
    用opengl实现多个视口
    齐次坐标和矩阵变换
    关于透明和不透明排序问题
    PlaneBoundedVolumeList平面体积查询
    jQuery获取元素
    关于借助prototype进行分页的一个小插件
    浏览器解析状态
    关于获取元素进行动画效果的问题以及简单的正则表达式验证
    php简单分页类
    生产者消费者问题
  • 原文地址:https://www.cnblogs.com/guosj/p/4571239.html
Copyright © 2011-2022 走看看