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


Posted in Python onJuly 09, 2019

下面先给大家介绍下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实现树形打印目录结构
Mar 29 Python
运行django项目指定IP和端口的方法
May 14 Python
基于Python List的赋值方法
Jun 23 Python
python使用插值法画出平滑曲线
Dec 15 Python
anaconda如何查看并管理python环境
Jul 05 Python
python urllib爬虫模块使用解析
Sep 05 Python
Python运行提示缺少模块问题解决方案
Apr 02 Python
jupyter notebook读取/导出文件/图片实例
Apr 16 Python
python3中的logging记录日志实现过程及封装成类的操作
May 12 Python
使用Python pip怎么升级pip
Aug 11 Python
详解Python3 定义一个跨越多行的字符串的多种方法
Sep 06 Python
jupyter notebook保存文件默认路径更改方法汇总(亲测可以)
Jun 09 Python
利用python开发app实战的方法
Jul 09 #Python
python设置环境变量的作用和实例
Jul 09 #Python
python版百度语音识别功能
Jul 09 #Python
利用Python实现Shp格式向GeoJSON的转换方法
Jul 09 #Python
python实现集中式的病毒扫描功能详解
Jul 09 #Python
python 图片去噪的方法示例
Jul 09 #Python
python 使用plt画图,去除图片四周的白边方法
Jul 09 #Python
You might like
Erlang的运算符(比较运算符,数值运算符,移位运算符,逻辑运算符)
2012/07/23 PHP
php排序算法实例分析
2016/10/17 PHP
php 生成加密公钥加密私钥实例详解
2017/06/16 PHP
Thinkphp 框架扩展之行为扩展原理与实现方法分析
2020/04/23 PHP
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
2009/12/07 Javascript
JavaScript Event学习第六章 事件的访问
2010/02/07 Javascript
Javascript 实用小技巧
2010/04/07 Javascript
ASP.NET jQuery 实例16 通过控件CustomValidator验证RadioButtonList
2012/02/03 Javascript
web开发人员学习jQuery的6大理由及jQuery的优势介绍
2013/01/03 Javascript
Javascript中引用示例介绍
2014/02/21 Javascript
jQuery制作圣诞主题页面 更像是爱情影集
2016/08/10 Javascript
canvas时钟效果
2017/02/16 Javascript
微信小程序实战之自定义toast(6)
2017/04/18 Javascript
深入理解JavaScript 中的执行上下文和执行栈
2018/10/23 Javascript
JS实现深度优先搜索求解两点间最短路径
2019/01/17 Javascript
js实现json数组分组合并操作示例
2019/02/12 Javascript
详解JavaScript实现动态的轮播图效果
2019/04/29 Javascript
使用Python获取Linux系统的各种信息
2014/07/10 Python
Python实现基本线性数据结构
2016/08/22 Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
2018/02/18 Python
解决paramiko执行命令超时的问题
2020/04/16 Python
用Python制作mini翻译器的实现示例
2020/08/17 Python
css3 flex布局 justify-content:space-between 最后一行左对齐
2020/01/02 HTML / CSS
Kiehl’s科颜氏西班牙官方网站:源自美国的植物护肤品牌
2020/02/22 全球购物
自荐书封面下载
2013/11/29 职场文书
求职简历中个人的自我评价
2013/12/25 职场文书
小加工厂管理制度
2014/01/21 职场文书
我的五年职业生涯规划
2014/01/23 职场文书
幼儿园教师教育感言
2014/02/28 职场文书
幼儿园新年寄语
2014/04/03 职场文书
机电专业毕业生自我鉴定2014
2014/10/04 职场文书
确保工程质量承诺书
2015/04/29 职场文书
让生命充满爱观后感
2015/06/08 职场文书
少先队入队仪式主持词
2015/07/04 职场文书
团支部书记竞选稿
2015/11/21 职场文书
幼师必备:幼儿园期末教师评语50条
2019/11/01 职场文书