def find_encap(line, if_dict):
line = line.lower()
index = line.find('encap')
up = line[index:].find(' ')
if index != -1 and up != -1:
key, value = line[index : up+index].split(':')
if_dict[key] = value
return 1
return 0
def find_hwaddr(line, if_dict):
line = line.lower()
index = line.find('hwaddr')
up = line[index+7:].find(' ') #skip first space
up += 7
if index != -1:
key, value = line[index : up+index].split(' ')
if_dict[key] = value
return 1
return 0
interfaces = {}
name=None
for line in ifconfig:
match = re.match('^[^ \t]\S*', line)
if match:
name = match.group()
interfaces[name] = {} #save as key:value
if name == None :
exit(-1); #unlikely
if find_encap(line, interfaces[name]):
print interfaces[name]['encap']
if find_hwaddr(line, interfaces[name]):
print interfaces[name]['hwaddr']
for name in interfaces.keys():
if name == 'lo':
continue
write_to_file(name, interfaces[name] )