shell-break跳出循环体-continue跳过循环语句

break跳出循环体

定义

break语句的作用是跳出当前循环结构,执行done后面的语句,可以用在for.while.until等循环语句的循环体中。
例如在九九乘法表中,只需输出5*5前的内容:

  #!/bin/bash
  for i in `seq 1 9`;
  do
        for j in `seq 1 $i`;
        do
              let "k=$i*$j"
              echo -ne "$i*$j=$k	"
        done
        echo
        if [[ "$i" -eq 5 ]];then     #当$i的值等于5时,测试语句返回值为0,
              break                  #执行break跳出循环
        fi
  done

输出结果为:

continue调过循环语句

continue不会跳出循环,他会跳过循环,返回循环语句,重新执行循环。
同样地,在九九乘法表中,只跳过5*5,继续执行循环。

  #!/bin/bash
  for i in `seq 1 9`
  do
    for j in `seq 1 $i`
    do
            if [[ $i -eq 5 ]];then   #当$i的值等于5时,判断语句成立,
                    continue         #当判断语句成立时,不执行后面的语句,重新循环
            fi
            let "k=$i*$j"
            echo -ne "$i*$j=$k	"
    done
    echo
  done

所以输出结果去掉了$i等于5的情况。其他的正常执行循环体语句。

区别

简单的讲;
break就是当样时,直接退出当前循环体,不执行循环了。(例如在公司受委屈了,break是老子不干了,老子马上就走)
continue则是当
样时,不执行当前循环体中continue语句后面的语句,返回循环体重新执行循环。(continue则不听不听,王八念经,这件事儿我就当没发生,明天还是照样上班)

原文地址:https://www.cnblogs.com/hxlinux/p/12939994.html