判断参数是否为整型
#!/bin/bash function IntTest() { for arg do #算术运算符,当参数为整型数字时,执行失败 (( $arg )) 2>/dev/null #屏蔽出错信息 if [ $? = 0 ] then echo "$arg" is an integer else echo "$arg" is not an integer fi done } IntTest -100 1234 22222222222222222 0765 0x10a +100 / 0xaadg assd 1.00 200.0 2a70 0.00
执行结果:
-100 is an integer
1234 is an integer
22222222222222222 is an integer
0765 is an integer
0x10a is an integer
+100 is an integer
0xaadg is not an integer
assd is not an integer
1.00 is not an integer
200.0 is not an integer
2a70 is not an integer
0.00 is not an integer