break和continue以及exit 区别

10/18 13:44
阅读数 11
#!/bin/bash
for i in `seq 1 3`
do
   echo "i=$i"
   for j in `seq 1 3`
   do
        echo "j=$j" 
        if [ $j -eq $i ]
        then
        break
        fi
        echo "j=$j"
   done
done

运行结果 i=1 j=1 i=2 j=1 j=1 j=2 i=3 j=1 j=1 j=2 j=2 j=3

三次的输出结果可以得出 break 直接退出当前循环,只影响内置循环,对于外循环无影响。

#!/bin/bash
for i in `seq 1 3`
do
   echo "i=$i"
   for j in `seq 1 3`
   do
        echo "j=$j" 
        if [ $j -eq $i ]
        then
        continue
        fi
        echo "j=$j"
   done
done

运行结果i=1 j=1 j=2 j=2 j=3 j=3 i=2 j=1 j=1 j=2 j=3 j=3 i=3 j=1 j=1 j=2 j=2 j=3
从三次的输出结果可以得出 continue 是退出本次循环并且重新开始循环,且只影响当前循环,
对于外循环无影响。

#!/bin/bash
for i in `seq 1 3`
do
echo "i=$i"
        for j in `seq 1 3`
        do
        echo "j=$j"
          if [ $j -eq $i ]
          then
          exit 1
          echo "j=$j"
          fi
        done
done

运行结果: i=1 j=1 得出结论exit 直接退出整个脚本

总结:break和continue两者都是只影响当前内置循环,而exit则是直接退出整个脚本

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部