Python实现获取命令行输出结果的方法

yipeiwu_com6年前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利用heapq实现一个优先级队列的方法

Python利用heapq实现一个优先级队列的方法

实现一个优先级队列,每次pop的元素要是优先级高的元素,由于heapq.heapify(list)默认构建一个小顶堆,因此要将priority变为相反数再push,代码如下: imp...

Python def函数的定义、使用及参数传递实现代码

Python编程中对于某些需要重复调用的程序,可以使用函数进行定义,基本形式为: def 函数名(参数1, 参数2, ……, 参数N): 执行语句函数名为调用的表示名,参数则是传入的参数...

Python 实现网页自动截图的示例讲解

Python 实现网页自动截图的示例讲解

背景介绍 最近在为部门编写一个自动化测试工具,工具涉及到一个功能,即 将自动化测试生成的html报告截图,作为邮件正文,html文件上传到web服务器以链接形式添加到邮件中,最后发送邮件...

python使用Matplotlib改变坐标轴的默认位置

python使用Matplotlib改变坐标轴的默认位置

使用Matplotlib绘制的图表的默认坐标轴是在左下角的,这样对于一些函数的显示不是非常方便,要改变坐标轴的默认显示方式主要要使用gca()方法 plt.gca()表示 Get cur...

Numpy数据类型转换astype,dtype的方法

1、查看数据类型 In [11]: arr = np.array([1,2,3,4,5]) In [12]: arr Out[12]: array([1, 2, 3, 4, 5])...