Shell编程中 if语句判断时怎样写判断条件判断变量a若为整型变量则执行后面的语句

用的是bash 例如像下面的
echo "input the nummber: "
read tt
if [ "$tt" ~ '/^[1-9][0-9]*$/' ] #这步不会写 如果输入的是整数则执行下面的
then
echo "$tt is an integer"
else
echo "$tt is not an integer"
fi

求大哥大姐们帮忙看看 应该很简单的 我新手 不会

把if [ "$tt" ~ '/^[1-9][0-9]*$/' ] 改成
if [ "$tt" -le 0 -o "$tt" -ge 0 ] 2>/dev/null

这边是只会做整数的比较,如果$tt不是整数就会产生错误信息,并不比较。然后执行else后面的动作。产生的错误信息可以用2>/dev/null丢掉。

如果是整数则进行[]内的比较,中间的-o表示或者,意思是整数$tt小于等于0或者大于等于0则为真,执行then后面的动作
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-09-08
不知道你说的是不是Bash,默认情况下Bash变量是无类型的,真的判断的话用正则吧

参考资料:

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网