欢迎来到山村网

Shell正则表达式验证IP地址

2019-03-02 13:26:26浏览:607 来源:山村网   
核心摘要:  这篇文章主要介绍了Shell正则表达式验证IP地址,本文给出了多个方法,并分别给出实现代码,需要的朋友可以参考下  本机多个IP

  这篇文章主要介绍了Shell正则表达式验证IP地址,本文给出了多个方法,并分别给出实现代码,需要的朋友可以参考下

  本机多个IP

  代码如下:

  ifconfig | awk '/inet/{print $2}' | awk -F: '{print $2}'

  首先,先用这个来着

   代码如下:

  CheckIPAddress()

  {

  echo $1 > /tmp/tmpserverip

  echo $1 |grep "^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$" > /dev/null

  if [ $? = 1 ]; then

  return 1

  else

  a=$(cut -d. -f1 /tmp/tmpserverip)

  b=$(cut -d. -f2 /tmp/tmpserverip)

  c=$(cut -d. -f3 /tmp/tmpserverip)

  d=$(cut -d. -f4 /tmp/tmpserverip)

  for loop in $a $b $c $d

  do

  if [ $loop -ge 255 ] || [ $loop -le 0 ]; then

  return 2

  fi

  done

  fi

  return 0

  }

  最初的时候,参考过下面的这些

   代码如下:

  grep "^([01]?dd?|2[0-4]d|25[0-5]).([01]?dd?|2[0-4]d|25[0-5]).([01]?dd?|2[0-4]d|25[0-5]).([01]?dd?|2[0-4]d|25[0-5]).$"

  输入ip,检查其是否满足的ip书写规范,即不能大于255,不能有字母,和其他标点,参考网上的,自己搞了个如下,做个标记!@

   代码如下:

  echo -n 'Enter the Server-ip:'

  read BISSip

  echo $BISSip > /tmp/tmpserverip

  echo $BISSip|grep "^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$" > /dev/null

  num=$?

  if [ $num = 1 ]

  then

  echo error ip,please enter correct

  else

  {

  a=$(cut -d. -f1 /tmp/tmpserverip)

  b=$(cut -d. -f2 /tmp/tmpserverip)

  c=$(cut -d. -f3 /tmp/tmpserverip)

  d=$(cut -d. -f4 /tmp/tmpserverip)

  {

  if [ $a -ge 255 ]||[ $a -le 0 ]

  then

  echo a:error ip

  else

  echo 1 > /tmp/jack

  fi

  }

  {

  if [ $b -ge 255 ]||[ $b -lt 0 ]

  then

  echo b:error ip

  else

  echo 1 >>/tmp/jack

  fi

  }

  { if [ $c -ge 255 ]||[ $c -lt 0 ]

  then

  echo c:error ip

  else

  echo 1 >>/tmp/jack

  fi

  }

  { if [ $d -ge 255 ]||[ $d -le 0 ]

  then

  echo d:error ip

  else

  echo 1 >> /tmp/jack

  fi

  }

(责任编辑:豆豆)
下一篇:

Shell脚本中通过正则表达式匹配IP地址

上一篇:

Shell脚本检查IP格式及mysql操作实例

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com