如何检查变量是否包含有效的IP地址

时间:2013-06-25 08:49:56

标签: linux shell unix ip-address aix

我正在编写一个shell脚本程序,其中我从用户那里获取IP地址或系统名称,任何人都可以告诉我如何检查给定的IP地址或系统名称是否有效。我认为ping不起作用,我试过但是我不能解决它,所以还有其他一些方法。

2 个答案:

答案 0 :(得分:1)

试试这个,希望它能够

#! /bin/sh

valid_ip()
{
  # Check if IP format is num.num.num.num / num between 0..255
  if [ "$(sipcalc $1 | grep ERR)" != "" ]; then
    echo "incorrect"
    return 1
  fi
  echo "correct"
  return 0
}

答案 1 :(得分:0)

我的第一个想法是使用“主持人”

host 192.168.1.dog
Host 192.168.1.dog not found: 3(NXDOMAIN)

echo $?
1

host happy
happy.local has address 192.168.1.25

echo $?
0

host 192.168.1.25
25.1.168.192.in-addr.arpa domain name pointer Happy.local.

echo $?
0