ifconf_ip eth0 -a 192.168.2.1 -n 255.255.255.0 -g 192.168.2.0 -d 8.8.8.8ifconf_ip eth0 -a 192.168.2.1 -n 255.255.255.0ifconf_ip eth0 -g 192.168.2.ifconf_ip eth0 -d 8.8.8.8这样的 怎么样才能正确取对呢 有时候可能只有网关或者dns 正则我写了一下 不太懂 大佬有没有更简便的方法 求
Device=re.search("ifconf_ip (.*?) -a",command)
Device=Device.group(1)
IPADDRESS=re.search('-a [0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}', command)IPADDRESS=IPADDRESS.group(0).split("-a ")
NETMASK = re.search('-n [0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}', command)
NETMASK=NETMASK.group(0).split("-n ")
GATEWAY = re.search('-g [0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}', command)
GATEWAY = GATEWAY.group(0).split("-g ")
DNS=re.search('-d [0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}', command)
DNS = DNS.group(0).split("-d ")
for i in range(len(IPADDRESS)):
if (re.search('[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}', IPADDRESS) != None):
IPADDRESS = IPADDRESS
break;
for i in range(len(NETMASK)):
if (re.search('[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}', NETMASK) != None):
NETMASK = NETMASK
break;
for i in range(len(GATEWAY)):
if (re.search('[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}', GATEWAY) != None):
GATEWAY = GATEWAY
break;
for i in range(len(DNS)):
if (re.search('[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}', DNS) != None):
DNS = DNS
break;
|