| 在循环过程中,有时候需要在未达到循环结束条件时强制跳出循环,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
	continuecontinue命令与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!"永远不会被执行。
      (责任编辑:IT) |