对于要求控制循环次数、操作对象按数字顺序编号、按特定条件执行重复操作等情况,更适用while循环语句
while循环语句主要用来重复执行一组命令或语句,一直到条件不再满足为止,常用于守护进程或持续运行的程序。
while语句的语法格式:
1、一般格式
while <条件表达式> #条件表达式为真则执行下面的命令集
do
命令集/程序
done2、死循环格式
while true //或真或假
do
命令集
done
死循环的条件一定是为真的。3、按行读取相应的文件内容并处理
while read line
do
命令集/程序
done < path to file
实例一:一般格式
cat while01.sh
initNum=1 # 初始化一个初始值,数据类型为整数,值为1
ExitNum=6 # 上限值,作为while循环的退出条件,和初始值进行比较
while [ ${initNum} -le ${ExitNum} ] #条件,两个变量进行比较,变量被解析为整数,进行比较
do
echo ${initNum} # 输出不断变化的initNum结果
(( initNum++ )) # 将initNum依次递增加1,每次循环都会加1
done
运行结果
sh while01.sh
1
2
3
4
5
6
实例二:死循环格式
cat while02.sh
while true
do
printf "云计算是未来发展的必然趋势,尤其是和AI结合...\n"
echo
sleep 3
done
输出结果:
sh while02.sh
云计算是未来发展的必然趋势,尤其是和AI结合...
云计算是未来发展的必然趋势,尤其是和AI结合...
实例三: 按行读取相应的文件内容并处理
cat while03.sh
printf "请输入您的姓名:"
while read name
do
printf "******您输入的姓名是:${name}\n******"
if [ ${name} == 666 ];then
exit
fi
done
运行结果:
sh while03.sh
请输入您的姓名:111
******您输入的姓名是:111
******lvjonhong
******您输入的姓名是:lvjonhong
******666
******您输入的姓名是:666