ps: shell结合c应该是可以写出非常强大的脚本的!加油~~~
shell中经常需要判断一个参数的类型,用来决定是否将该参数传给后续代码执行。
这里简单介绍两种判断一个字符串是否为数字的方法:
1.使用linux下相当牛x的计算器bc,当然这里有点大材小用了,不过也不失为一种方法
echo $str | bc
将字串打印出来,通过管道传给计算器bc这个程序,这个程序的基本功能是计算表达式的值,但是特别的是
在输入单个数字,它返回的值仍然是这个数字(单个数字是特殊的表达式),根据这个特性,就可以用来判断一个字串是否为数字了。
根据方法1,下面给出了一个测试脚本。
方法2:可以自己写一个程序来判断一个字串是否为数字,然后在脚本中调用这个程序就可以达到目的。比如写一个简单的c程序来判断一段字符串是否为数字。程序代码如下:
用gcc编译之后,将可执行文件命名为check,然后在脚本中调用它。check的功能是接受一个字符串,然后判断它的类型,然后将判断结果打印出来。脚本的内容如下:
使用第二种方法的前提是系统中装了gcc或其他c编译器。当然用其他语言比如python,java等应该也是可以的。
相信除了这两种方法外还有其他方法,比如使用正规式。
<a target="_blank" href="http://blog.csdn.net/he_qiao/article/details/8609270">原文</a>