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中使用scapy模拟数据包实现arp攻击、dns放大攻击例子
Oct 23 Python
改进Django中的表单的简单方法
Jul 17 Python
python模块简介之有序字典(OrderedDict)
Dec 01 Python
PyQt5每天必学之布局管理
Apr 19 Python
详解python多线程、锁、event事件机制的简单使用
Apr 27 Python
Django 路由系统URLconf的使用
Oct 11 Python
我就是这样学习Python中的列表
Jun 02 Python
python检测服务器端口代码实例
Aug 31 Python
Python实现微信好友的数据分析
Dec 16 Python
Python谱减法语音降噪实例
Dec 18 Python
Tensorflow不支持AVX2指令集的解决方法
Feb 03 Python
Python实现疫情通定时自动填写功能(附代码)
May 27 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
理解php Hash函数,增强密码安全
2011/02/25 PHP
PHP常用开发函数解析之数组篇[未完结]
2012/07/30 PHP
PHP 数据结构队列(SplQueue)和优先队列(SplPriorityQueue)简单使用实例
2015/05/12 PHP
Laravel框架路由和控制器的绑定操作方法
2018/06/12 PHP
Js日期选择器并自动加入到输入框中示例代码
2013/08/02 Javascript
获取非最后一列td值并将title设为该值的方法
2013/10/30 Javascript
JavaScript对IE操作的经典代码(推荐)
2014/03/10 Javascript
JQuery跳出each循环的方法
2015/04/16 Javascript
浅析angularJS中的ui-router和ng-grid模块
2016/05/20 Javascript
jquery 点击元素后,滚动条滚动至该元素位置的方法
2016/08/05 Javascript
jQuery在ie6下无法设置select选中的解决方法详解
2016/09/20 Javascript
jQuery插件HighCharts实现气泡图效果示例【附demo源码】
2017/03/13 Javascript
让axios发送表单请求形式的键值对post数据的实例
2018/08/11 Javascript
微信小程序公用参数与公用方法用法示例
2019/01/09 Javascript
React通过redux-persist持久化数据存储的方法示例
2019/02/14 Javascript
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
vuex actions异步修改状态的实例详解
2019/11/06 Javascript
Python实现爬虫设置代理IP和伪装成浏览器的方法分享
2018/05/07 Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
2019/03/26 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
2019/04/25 Python
为什么从Python 3.6开始字典有序并效率更高
2019/07/15 Python
pymysql 开启调试模式的实现
2019/09/24 Python
python实现回旋矩阵方式(旋转矩阵)
2019/12/04 Python
python opencv实现信用卡的数字识别
2020/01/12 Python
Python3 shutil(高级文件操作模块)实例用法总结
2020/02/19 Python
vue学习笔记之动态组件和v-once指令简单示例
2020/02/29 Python
Python操作MongoDb数据库流程详解
2020/03/05 Python
python Socket网络编程实现C/S模式和P2P
2020/06/22 Python
Python环境配置实现pip加速过程解析
2020/11/27 Python
Nebula美国官网:便携式投影仪
2019/03/15 全球购物
大学自荐信
2013/12/12 职场文书
高中生学习的自我评价
2013/12/14 职场文书
业务员岗位职责范本
2013/12/15 职场文书
优秀公益广告词大全
2014/03/19 职场文书
青春寄语大全
2014/04/09 职场文书
感恩教师节演讲稿
2014/09/03 职场文书