06-shell-判断分支处理

 

[root@rocky script]# cat bmi.sh 
#!/bin/bash
read -p "请输入身高(m为单位): " HIGH

if [[ ! "$HIGH" =~ ^[0-2](\.[0-9]{,2})?$ ]];then   #如果不在正则表达式范围内
  echo "输入错误的身高!"
  exit 1
fi

read -p "请输入体重(kg为单位): " WEIGHT

if [[ ! "$WEIGHT" =~ ^[0-9]{1,3}$ ]];then echo "输入错误的体重!"; exit 2; fi

BMI=`echo $WEIGHT/$HIGH^2|bc`
echo $BMI

if [ $BMI -le 18 ] ;then
     echo   "太瘦了 "
elif [ $BMI -lt 24 ] ;then
     echo "你真棒"
else
     echo  "太胖了"
fi

 

[root@rocky script]# bash bmi.sh 
请输入身高(m为单位): 1.65
请输入体重(kg为单位): 55
20
你真棒

 

[root@rocky script]# bash bmi.sh 
请输入身高(m为单位): 2
请输入体重(kg为单位): 70
17
太瘦了
[root@rocky script]# bash bmi.sh 
请输入身高(m为单位): 1
请输入体重(kg为单位): 50
50
太胖了

 

posted @ 2022-04-04 15:33  gg888666  阅读(39)  评论(0编辑  收藏  举报