您的位置:首页 > 其它

如何判断命令行的参数是不是一个数字?

2011-10-28 16:18 274 查看
$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

这是我对不同参数的测试结果:

$_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!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: