循环分为不定式循环,和定式循环,两者之间的区别式,一个是没有循环次数要求,一个是有次数限制。
不定式循环格式一:
while [ condition ] <==中括号内为判断式
do <==循环开始
程序段
done <==循环结束
当【condition 条件成立时,就进行循环,直到 condition
条件不成立】。
不定式循环格式二
until [ condition ] <==中括号内为判断式
do <==循环开始
程序段
done <==循环结束
当【condition 条件成立时,就终止循环,否则就持续执行循环】。
- 例1
#!/bin/bash
while [ "$yn" != "yes" -a "$yn" != "YES" ]
do
read -p "请输入 YES/yes:" yn
done
echo "OK 输入正确"
如果输入参数不是 “yes/YES”则一直会让输入
- 例2
#!/bin/bash
until [ "$yn" == "YES" -o "$yn" == "yes" ]
do
read -p "请输入 YES/yes:" yn
done
echo "OK输入正确"
如果参数是“YES/yes” 则停止循环,若不是则继续循环。
备注:read -s :可以隐藏输入内容,尤其是输入密码得时候
- 例3
用户输入一个数字获取从0-该数字得和
#!/bin/bash
read -p "请输入一个数字" num
s=0
i=0
while [ "$i" != "$num" ]
do
i=$(($i+1))
s=$(($s+$i))
done
echo "the result of '1+2+3+4..+100' ==> $s"
学习笔记
网友评论