vi 价格竞猜.sh           ##编辑脚本文件

#!/bin/bash ##声明解释器

p=$(expr $RANDOM % 1000) ##设置随机生成在0-999之间的数字的变量p

t=0 ##设置竞猜的初始次数0的变量t

echo "商品价格在0-999之间"      ##最初现在在屏幕上的内容

while true ##设置条件一直为真,循环执行循环体

do ##开始写循环体的内容

read -p "输入价格" n ##设置变量n,使用户手动输入变量内容

let t++ ##使竞猜次数的变量t逐次加1 

expr $n + 1 &>/dev/null ##使用计算器计算用户竞猜的$n加1的值,将结果输入到黑洞,意义在于当$n为字符时,加1会出现错误值

  if [ $? != 0 ];then ##if判断上条命令如果是错误的,返回值“”

    echo "请输入纯数字"

  elif [ -z $n ];then ##if判断若竞猜价格变量$n字符串为空的话,返回值

    echo "输入的数字不能为空"

  elif [ $n -eq $p ];then ##if判断$n等于实际价格$p的话,返回值“”,并且exit退出此脚本,显示一共猜测的次数

    echo "恭喜你,答对了"

    echo "您一共输入了$t次"

    exit 0

  elif [ $n -gt $p ] && [ $n -le 999 ];then ##if判断$n大于实际价格$p时并且$n小于等于实际价格最大值999时

    echo "太高了"

  elif [ $n -lt $p ] && [ $n -ge 0 ];then ##if判断$n小于实际价格$p时并且$n大于等于实际价格最小值0时

    echo "太低了"

  elif [ $n -gt 999 ] || [ $n -lt 0 ];then ##if判断$n不在实际价格0-999之间时

    echo "请输入0-999之间的数字"

  fi ##结束if的判断语句

done ##结束循环体的编写

注意:在此脚本中,应用了while循环语句,if判断语句,和变量的知识,需要注意的时,在循环体中if判断时,注意条件的编写顺序;