写了一段代码,想获取网卡与pci号得对应关系
#coding:utf-8
import re
import os
dict1={}
cmd='lshw -c net -businfo |grep pci>1.txt'
result=os.system(cmd)
with open('1.txt', 'r') as fb:
for line in fb:
pci=re.findall('pci@.*?(\d+:\d+:\d+\.\d).*?network',line)
devName=re.findall('pci@.*?(e\w+).*?network',line)
# print(pci)
# print(devName)
IfNames=dict1.update(dict(zip(devName,pci)))
print(dict1)
结果返回时这样得
{'eth0': '0000:02:01.0'}
{'eth0': '0000:02:01.0', 'eth1': '0000:02:05.0'}
{'eth0': '0000:02:01.0', 'eth1': '0000:02:05.0', 'eth2': '0000:02:06.0'}
想要得结果就是
{'eth0': '0000:02:01.0', 'eth1': '0000:02:05.0', 'eth2': '0000:02:06.0'}
如何实现哪位专家指导一下。