-3
我想编写shell脚本,输入年龄并将其转换为no。几个月;那么按照年龄显示该人是小孩,青少年,成年人或老年人。Unix shell脚本按月数转换年龄
我想编写shell脚本,输入年龄并将其转换为no。几个月;那么按照年龄显示该人是小孩,青少年,成年人或老年人。Unix shell脚本按月数转换年龄
请在这里阅读:http://www.gnu.org/software/bash/manual/bashref.html
下面是一个例子,用于检查如果年龄是一个数字是一个高层次的学校:
printf "Enter age: "
read age
if [[ "$age" =~ ^[0-9]+$ ]] ; then
months=$(expr $age \* 12)
echo "$age years is $months months"
if [ $age -lt 11 ]; then
echo "child."
elif [ $age -lt 20 ]; then
echo "teenager."
elif [ $age -lt 100 ]; then
echo "less than 100, and so on..."
fi
else
echo "Enter number."
fi
编辑:Barmar指出expr是一个老式方法。您可以改用let "months=$age * 10"
。
1990年代称为,他们想要他们的' expr'回来。现代shell有内置的表达式处理。 – Barmar 2013-04-21 04:51:42
如果这就是你想要做的,那么做,这是什么问题?如果您遇到问题,请告诉我们您尝试过什么,解释它做错了什么,然后有人会帮助您解决问题。 – Barmar 2013-04-21 04:36:39
我对这个shell脚本非常陌生..所以我不知道如何做它我只知道循环的sytax,如果语句...我知道要显示...只是有问题如何转换 – user2303632 2013-04-21 04:38:58
然后,你需要学习。我们不会为您编写代码,您必须首先付出一些努力。 – Barmar 2013-04-21 04:39:43