当前位置: 首页 > 编程笔记 >

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

阎德宇
2023-03-14
本文向大家介绍Python实现获取命令行输出结果的方法,包括了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程序设计有所帮助。

 类似资料:
  • 问题内容: 我的最终目标是捕获终端中执行的上一条命令。由于〜/ .bash_history不包含当前终端会话中的命令,因此我不能简单地读取该文件。 在另一个线程中,我找到了以下脚本: 这与我要查找的内容非常接近,但是由于它是作为子进程启动的,因此它也不会包括当前终端会话的历史记录。有什么办法可以在当前shell中执行类似的命令? 问题答案: 为什么不直接读取文件。 〜/ .bash_history

  • 本文向大家介绍python获取从命令行输入数字的方法,包括了python获取从命令行输入数字的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python获取从命令行输入数字的方法。分享给大家供大家参考。具体如下: 希望本文所述对大家的Python程序设计有所帮助。

  • Computer says no. — Little Britain 一个问题的详细反馈会对解决问题有帮助。当你使用 exec 资源在节点上执行命令时, 并不总能轻易地找出其为何没有正确执行。如果命令返回一个非零的退出状态,Puppet 就会返回类似如下的错误消息: err: /Stage[main]//Node[cookbook]/Exec[this-will-fail]/returns: ch

  • 本文向大家介绍php获取linux命令结果的实例,包括了php获取linux命令结果的实例的使用技巧和注意事项,需要的朋友参考一下 如果使用php命令行里想获取etho网卡的IP怎么处理呢 ? 以上这篇php获取linux命令结果的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 问题内容: 尝试读取的版本号时,我得到了很多其他行,需要忽略。我尝试阅读的手册,并尝试了以下命令: 我想知道这是否正确吗? 问题答案: 是的,这是从命令获取第一行输出的一种方法。 如果命令以相同的方式输出任何您想要捕获的标准错误,则需要将命令的标准错误重定向到标准输出流: 捕获第一行的方法还有很多,包括(在第一行之后退出),(仅打印第一行,但读取所有内容),(仅打印第一行,但再次读取所有内容)等。

  • 我想知道这是不是正确的做法?