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

yipeiwu_com7年前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实现剪切功能

python实现剪切功能

本文实例为大家分享了python实现剪切功能的具体代码,供大家参考,具体内容如下 #!/usr/bin/env python #coding: utf8 import sys m...

深入浅析Python传值与传址

1. 传值与传址的区别 传值就是传入一个参数的值,传址就是传入一个参数的地址,也就是内存的地址(相当于指针)。他们的区别是如果函数里面对传入的参数重新赋值,函数外的全局变量是否相应改变:...

python实现在IDLE中输入多行的方法

在python命令行模式下,在IDLE中输入多行,例如if  else 使用tab的方式,控制缩进 在最后,连续两个回车,表示结束 >>> if stat...

利用django如何解析用户上传的excel文件

前言 我们在工作中的时候,会有这种需求:用户上传一个格式固定excel表格到网站上,然后程序负债解析内容并进行处理。我最近在工作中就遇到了,所以想着将解决的过程总结分享出来,方便大家参考...

Python2和3字符编码的区别知识点整理

Python2和3字符编码的区别知识点整理

python解释器运行代码的流程启动python解释器(相当于文本编辑器)打开文件,显示这个字符并检查语法(涉及字符编码, a=1只是一个很普通的字符)解释字符 (涉及字符编码,再去内存...