$cat _chk
#!/bin/ksh
#
var=$(echo $1|bc 2>/dev/null)
if [[ $var != $1 ]]
then
echo "$1 isn't a number!"
exit 1
fi
if echo $1|grep "\." >/dev/null 2>&1
then
echo "$1 is float a number!"
else
echo "$1 is integer a number!"
fi
这是我对不同参数的测试结果:
#!/bin/ksh
#
var=$(echo $1|bc 2>/dev/null)
if [[ $var != $1 ]]
then
echo "$1 isn't a number!"
exit 1
fi
if echo $1|grep "\." >/dev/null 2>&1
then
echo "$1 is float a number!"
else
echo "$1 is integer a number!"
fi
这是我对不同参数的测试结果:
$_chk 234.23423.234 234.23423.234 isn't a number! $_chk 23.234 23.234 is float a number! $_chk 234 234 is integer a number! $_chk sdf sdf isn't a number! $_chk 234.234 234.234 is float a number! $_chk 234.45d 234.45d isn't a number! $_chk de.er de.er isn't a number! $_chk er3489fnj.234werer.were er3489fnj.234werer.were isn't a number!