日期:2014-05-16  浏览次数:20526 次

关于年龄范围(0-100)的合法性验证问题
请问用shell脚本如何验证输入的合法性啊?比如下面这个程序:
#!/bin/bash
echo "请输入你的年龄,年龄在0到100之间:"
read age
  if [ "$age" < "0" ]||[ "$age" > "100" ];then
  echo "合法"
  else
  echo "不合法"
  fi

这样的话如果输入的是数字是没有问题的,如果输入了字母或者其它一些特殊字符就出问题了。请问哪个大哥能够提供一些解决办法啊?谢谢了

------解决方案--------------------
if [ -z "$(echo $age | egrep -v ^[0-9]$)" ] ; then echo all digits; fi