while的使用语法
while true do 代码块 done
案例:
猜数字游戏
- 使用命令随机生成一个数字 1-100
echo $((RANDOM%100+1))
while true
do - 要求用户输入要猜的数字 (数字需要判断是否是整数)
read -p xxx num - 比对随机数和用户猜的数字
- 输出结果
用户猜的数字小 则输出到屏幕 你猜的数字小了
如果数字大于随机数 则输出 你猜的数字大了
如果数字相等 则提示 恭喜你 猜对了 && exit
done
[root@shell ~]# cat ran.sh #!/bin/sh ran=`echo $((RANDOM%100+1))` while true do let i++ read -p "请输入你要猜的数字[1-100]: " num if [ $num -gt $ran ];then echo "你输入的数字 $num 大了" elif [ $num -lt $ran ];then echo "你输入的数字 $num 小了" else echo "恭喜你答对了随机数为$ran" echo "总共猜了$i 次" exit fi done