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处理中文编码和判断编码示例
Feb 26 Python
python检查序列seq是否含有aset中项的方法
Jun 30 Python
Python多线程爬虫简单示例
Mar 04 Python
Python学习小技巧之列表项的排序
May 20 Python
Python下调用Linux的Shell命令的方法
Jun 12 Python
Python3实现腾讯云OCR识别
Nov 27 Python
用Python实现最速下降法求极值的方法
Jul 10 Python
Python使用itchat 功能分析微信好友性别和位置
Aug 05 Python
Python二维数组实现求出3*3矩阵对角线元素的和示例
Nov 29 Python
pandas的相关系数与协方差实例
Dec 27 Python
解决tensorflow打印tensor有省略号的问题
Feb 04 Python
python Timer 类使用介绍
Dec 28 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
桌面中心(四)数据显示
2006/10/09 PHP
深入讲解PHP Session及如何保持其不过期的方法
2015/08/18 PHP
Thinkphp 中 distinct 的用法解析
2016/12/14 PHP
详解使用php调用微信接口上传永久素材
2017/04/11 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
网站上面有这种切换效果
2006/06/26 Javascript
Javascript日期对象的dateAdd与dateDiff方法
2008/11/18 Javascript
javascript 变量作用域 代码分析
2009/06/26 Javascript
多浏览器支持的右下角浮动窗口
2010/04/01 Javascript
轻量级 JS ToolTip提示效果
2010/07/20 Javascript
react-native-video实现视频全屏播放的方法
2018/03/19 Javascript
JS与CSS3实现图片响应鼠标移动放大效果示例
2018/05/04 Javascript
vuex + axios 做登录验证 并且保存登录状态的实例
2018/09/16 Javascript
VUE项目初建和常见问题总结
2019/09/12 Javascript
JS 图片压缩原理与实现方法详解
2020/04/29 Javascript
js数组中去除重复值的几种方法
2020/08/03 Javascript
vue 避免变量赋值后双向绑定的操作
2020/11/07 Javascript
Antd-vue Table组件添加Click事件,实现点击某行数据教程
2020/11/17 Javascript
[42:00]完美世界DOTA2联赛PWL S3 Phoenix vs INK ICE 第一场 12.13
2020/12/17 DOTA
python抓取网页内容示例分享
2014/02/24 Python
Python tkinter模块中类继承的三种方式分析
2017/08/08 Python
Python实现爬取需要登录的网站完整示例
2017/08/19 Python
TensorFlow高效读取数据的方法示例
2018/02/06 Python
Python利用splinter实现浏览器自动化操作方法
2018/05/11 Python
Python中Numpy包的安装与使用方法简明教程
2018/07/03 Python
Python for循环与getitem的关系详解
2020/01/02 Python
Python3 字典dictionary入门基础附实例
2020/02/10 Python
python实现自动清理重复文件
2020/08/24 Python
python实现简单的tcp 文件下载
2020/09/16 Python
基于HTML5 audio元素播放声音jQuery小插件
2011/05/11 HTML / CSS
高中生校园生活自我评价
2013/09/19 职场文书
大学生求职自荐信
2013/12/12 职场文书
电脑专业个人求职信范文
2014/02/04 职场文书
离职报告格式
2014/11/04 职场文书
党员个人承诺书
2015/04/27 职场文书
酒店工程部的岗位职责汇总大全
2019/10/23 职场文书