Python通过正则表达式提取命令行输出中的MAC与IP地址
本文介绍在Python中获取命令行执行结果并过滤所需信息的方法。以Windows系统为例,通过os.popen执行ipconfig命令,结合正则表达式精准提取本机物理地址(MAC)和IP地址,并展示完整代码与运行结果,供Python开发者参考。
本文详细介绍Python获取命令行输出结果的具体实现方式,供读者参考学习。
在Python中获取命令行输出后,可通过特定逻辑对结果进行过滤,从而提取出目标信息。
此处以提取本机MAC地址和IP地址为例进行说明。
# coding: GB2312
import os, re
# execute command, and return the output
def execCmd(cmd):
r = os.popen(cmd)
text = r.read()
r.close()
return text
# write "data" to file-filename
def writeFile(filename, data):
f = open(filename, "w")
f.write(data)
f.close()
# 获取计算机MAC地址和IP地址
if __name__ == '__main__':
cmd = "ipconfig /all"
result = execCmd(cmd)
pat1 = "Physical Address[\. ]+: ([\w-]+)"
pat2 = "IP Address[\. ]+: ([\.\d]+)"
MAC = re.findall(pat1, result)[0] # 找到MAC
IP = re.findall(pat2, result)[0] # 找到IP
print("MAC=%s, IP=%s" %(MAC, IP))
程序运行后的输出效果如下所示。
E:\Program\Python>del.py MAC=00-1B-77-CD-62-2B, IP=192.168.1.110 E:\Program\Python>
如需了解更多Python相关知识,可参考本站相关专题,包括《Python字符串操作技巧汇总》、《Python常用遍历技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》以及《Python入门与进阶经典教程》。
希望上述内容能对从事Python程序设计的人员提供实际帮助。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









