Python通过正则表达式提取命令行输出中的MAC与IP地址

Alice
Alice
发布时间:2026-10-13| 3人浏览过
原创

本文介绍在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程序设计的人员提供实际帮助。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。