shell脚本之判断输入参数是否为整数值的实例

时间:2018-07-14
今天小编就为大家分享一篇shell脚本之判断输入参数是否为整数值的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在写脚本时,通常会有很多关于命令行参数,变量等的判断其是否存在或者类型是否正确。当判断一个从命令行接收到一个值,需要判断其是否为整型值时,有以下两种方法:

1、用shell命令使其与某个整型值进行计算,通过$?来判断其是否是一个整型值。

flag=true
read -p "please input a number:" num
while $flag
do
   expr $num + 0 &>/dev/null
   [ $? -eq 0 ] && flag=false || read -p "please input a integer:" num
done

2、通过sed来判断

flag=true
read -p "please input a number:" num
while $flag
do
  len=`echo "$num"|sed 's/[0-9]//g'|sed 's/-//g'`
  [ -n $len ] && flag=false || read -p "please input a integer:" num
done

以上这篇shell脚本之判断输入参数是否为整数值的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。