Python3 执行系统命令并获取实时回显功能

 更新时间:2019年07月09日 16:38:15   投稿:mrr  
这篇文章主要介绍了Python3 执行系统命令并获取实时回显功能,文中通过两种方法给大家介绍了Python执行系统命令并获得输出的方法,需要的朋友可以参考下

下面先给大家介绍下Python3 执行系统命令并获取实时回显

最近在改造一些打包的逻辑,原来在 Windows 下是基于批处理制作的,由于批处理用起来不是很方便,一些实时的计算基本无法胜任,所以转向 Python3。但在以前脚本的基础上很多是需要调用系统命令的比如 VS 编译一个项目,我们需要获取实时的回显知道编译的结果和进度。所以就有了以下方法:

@staticmethod
def __external_cmd(cmd, code="utf8"):
  print(cmd)
  process = subprocess.Popen(cmd, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
  while process.poll() is None:
    line = process.stdout.readline()
    line = line.strip()
    if line:
      print(line.decode(code, 'ignore'))

在使用时直接调用 __external_cmd 方法,传入你要执行的系统命令,根据回显内容设置以下编码就可以了。这样用起来还是比较方便的。

ps:下面看下Python执行系统命令并获得输出的几种方法

方法一:

import os
p = os.popen('uptime')
x=p.read()
print x

方法二:

import subprocess
res = subprocess.Popen('uptime',shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE,close_fds=True)
result = res.stdout.readlines()

总结

以上所述是小编给大家介绍的Python3 执行系统命令并获取实时回显功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • python过滤中英文标点符号的实例代码

    python过滤中英文标点符号的实例代码

    今天小编就为大家分享一篇python过滤中英文标点符号的实例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • QML用PathView实现轮播图

    QML用PathView实现轮播图

    这篇文章主要为大家详细介绍了QML用PathView实现轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • 深入理解Python中装饰器的用法

    深入理解Python中装饰器的用法

    装饰器的使用是Python的高级技巧之一,通过Decorator装饰器能够带来函数式编程中所需的很多特性,这里我们就来跟随文章一同深入理解Python中装饰器的用法,需要的朋友可以参考下
    2016-06-06
  • Python通过poll实现异步IO的方法

    Python通过poll实现异步IO的方法

    这篇文章主要介绍了Python通过poll实现异步IO的方法,实例分析了poll方法实现异步IO的相关技巧,需要的朋友可以参考下
    2015-06-06
  • python 限制函数调用次数的实例讲解

    python 限制函数调用次数的实例讲解

    下面小编就为大家分享一篇python 限制函数调用次数的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 一起来学习一下python的数字类型

    一起来学习一下python的数字类型

    这篇文章主要为大家详细介绍了python的数字类型,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • python正则分析nginx的访问日志

    python正则分析nginx的访问日志

    最近工作中遇到一个需求,是要分析nginx的访问日志,觉着利用python来实现比较合适,所以下面这篇文章主要介绍了利用python正则如何分析nginx的访问日志,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-01-01
  • 趣味Python实战练习之自动更换桌面壁纸脚本附源码

    趣味Python实战练习之自动更换桌面壁纸脚本附源码

    读万卷书不如行万里路,学的扎不扎实要通过实战才能看出来,本篇文章手把手带你编写一个自动更换桌面壁纸的脚本,代码简洁而且短,相信你一定看得懂,大家可以在过程中查缺补漏,看看自己掌握程度怎么样
    2021-10-10
  • Python中2种常用数据可视化库Bokeh和Altair使用示例详解

    Python中2种常用数据可视化库Bokeh和Altair使用示例详解

    本文对Python中两个常用的数据可视化库 Bokeh 和 Altair 进行了比较和探讨,通过对它们的特点、优缺点以及使用示例的详细分析,读者可以更好地了解这两个库的功能和适用场景,从而更好地选择合适的库来进行数据可视化工作,感兴趣的朋友跟随小编一起看看吧
    2024-04-04
  • Django 解决distinct无法去除重复数据的问题

    Django 解决distinct无法去除重复数据的问题

    这篇文章主要介绍了Django 解决distinct无法去除重复数据的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05

最新评论