# FNAME = "ifconfig.txt" FNAME = "ifconfig_u18.txt" ADAPTERS = dict() with open(FNAME) as fid: # for linenumber, line in enumerate(fid.readlines()): for linenumber, line in enumerate(fid): # macstr = "HWaddr" # "ether" macstr = "ether" # "ether" print(line) if ("lo" not in line) and ("tun" not in line): if line and line[0] != " ": infos = line.split() if infos: adapter = infos[0] if macstr in line: idx = line.find(macstr) startidx = idx + len(macstr) + 1 endidx = startidx + 17 macaddr = line[startidx:endidx] ADAPTERS[adapter] = macaddr FNAME_BASE = FNAME[:FNAME.rfind(".txt")] FNAME_OUT = FNAME_BASE + "_adapters.txt" FNAME_OUT2 = FNAME_BASE + "_adapters_changed.txt" with open(FNAME_OUT, "w") as fid: for adapter, mac in ADAPTERS.items(): fid.write("Adapter: " + adapter + ", MAC: " + mac + "\n") BASEMAC = "01:23:45:ff:00:" with open(FNAME_OUT2, "w") as fid: for i, (adapter, mac) in enumerate(ADAPTERS.items()): mac_changed = BASEMAC + "%02x" %(i+1) mac_changed = BASEMAC + "{0:02x}".format((i+1)) print(i, adapter, mac) fid.write("Adapter: " + adapter + ", MAC: " + mac_changed + "\n")