如何在Bash中测试变量是否为数字?

我只是不知道如何确保传递给脚本的参数是否为数字

我想做的就是这样:

测试*isnumber*$1&amp&VAR=$1 | | echo“需要一个数字”

有什么帮助吗

一种方法是使用正则表达式,如下所示:

re='^[0-9]+$'
如果[$yournumber=~$re]];然后
回显“错误:不是数字”&gt&2.出口1
fi

如果值不一定是整数,考虑适当修改正则表达式;例如:

^[0-9]+([.][0-9]+)$

…或者,用符号处理数字:

^[+-]?[0-9]+([.][0-9]+)$

发表评论