一、循环控制-break语句
作用: 终止循环,执行循环体后面的代码 案例: 循环打印输出数字1到9,当执行输出到5时终止循环。
要求输出: 1 2 3 4 执行完毕
案例代码
#!/bin/bash #Author: www.zutuanxue.com #Created Time: #Script Description: for i in `seq 1 9` do echo $i if [ $i -eq 5 ] then break fi done echo "执行完毕"
二、循环控制-continue语句
作用: 跳过某次循环,继续执行下一次循环;表示循环体内下面的代码不执行,重新开始下一次循环
案例: 循环打印输出数字1到9,当执行输出到5时跳过本次循环。
要求输出: 1 2 3 4 6 7 8 9 执行完毕
案例代码
#!/bin/bash #Author: www.zutuanxue.com #Created Time: #Script Description: for ((i=1;i<10;i++)) do if [ $i -eq 5 ] then continue else echo $i fi done echo "执行完毕"
三、循环控制-sleep
作用: 控制循环的节奏,控制循环频率 当执行一个无限循环语句的时候,如果任意其循环那么该循环就会疯狂的消耗计算机的内存和CPU资源,消耗最大的就是CPU,所以一个循环不可能让其肆意循环,必须控制其循环的节奏,可以使用sleep语句来完成。
案例: 写一个倒计时程序:从9到1,每秒倒数一次。
案例代码
#!/bin/bash #Author: #Created Time: #Script Description: echo -n "倒计时: " for i in `seq 9 -1 1` do echo -n -e "\b$i" sleep 1 done echo echo "执行完毕"
四、参数控制命令-shift
作用: 外部传参到循环时,参数管理命令 使位置参数向左移动,默认移动1位,可以使用shift 2 传参要是N的整数倍
案例: 通过外部传参的方式向脚本内的循环传递参数,要求打印每次循环使用的参数。
案例代码
#!/bin/bash # #Author: www.zutuanxue.com #Created Time: #Release: #Description: #1、判断外传参的数量 [ $# -lt 3 ]&&echo '请输入至少三个参数:'$0' $1 $2 $3 ...'&&exit 1 #将参数的数量赋值给count count=$# #通过shift左移参数输出 #使位置参数向左移动,默认移动1位,可以使用shift 2 传参要是N的整数倍 for ((i=1;i<=$count;i++)) do echo '参数数量: '$#'' echo '当前$1的数值是: '$1'' shift 1 sleep 1 done echo "执行完毕"
五、脚本退出命令-exit
作用: 退出程序并释放占用的系统资源
案例: 循环输出数字1-9,当循环到5时退出脚本。
案例代码
#!/bin/bash #Author: www.zutuanxue.com #Created Time: #Script Description: for i in `seq 1 9` do echo $i if [ $i -eq 5 ] then exit 0 fi done echo "执行完毕"
六、作业
break 和 exit语句的区别