python3 subprocess_Python 3.4.3 subprocess.Popen获取命令输出而不管道?
使用pexpect:
2.py:
import sys
if sys.stdout.isatty():
print('hello')
else:
print('goodbye')
子:
import subprocess
p = subprocess.Popen(
['python3.4','2.py'],stdout=subprocess.PIPE
)
print(p.stdout.read())
--output:--
goodbye
Pexpect的:
import pexpect
child = pexpect.spawn('python3.4 2.py')
child.expect(pexpect.EOF)
print(child.before) #Print all the output before the expectation.
--output:--
hello
这里是grep –colour = auto:
import subprocess
p = subprocess.Popen(
['grep','--colour=auto','hello','data.txt'],stdout=subprocess.PIPE
)
print(p.stdout.read())
import pexpect
child = pexpect.spawn('grep --colour=auto hello data.txt')
child.expect(pexpect.EOF)
print(child.before)
--output:--
b'hello world\n'
b'\x1b[01;31mhello\x1b[00m world\r\n'
python3 subprocess_Python 3.4.3 subprocess.Popen获取命令输出而不管道?相关推荐
- subprocess.Popen获取子程序输出
new_child = subprocess.Popen([self.manage, worker], stderr=subprocess.PIPE) for line in iter(new_chi ...
- Python 技术篇-通过管道命令获取cmd执行的结果,获取os.system()、subprocess.Popen()执行命令返回的结果
正常的 os.system() 执行完后只会返回个执行状态值,返回的 0 表示执行成功,1 表示执行失败. 如果想要获取到执行后的结果集,就需要用到管道命令 os.popen(),然后用 read() ...
- Python subprocess.Popen 实时输出 stdout(正确管道写法)
大部分的程序是这样的: from subprocess import Popen, PIPE, STDOUTp = Popen(cmd, stdout=PIPE, stderr=STDOUT, she ...
- subprocess.Popen(执行命令)
subprocess.Popen(arg, shell=True,cwd='path') arg是你执行的命令,可以是字符串,也可以是列表/元组,如果 args 是字符串,它将作为命令行字符串通过sh ...
- python subprocess库 终端命令行命令
python subprocess subprocess 模块允许我们启动一个新进程,并连接到它们的输入/输出/错误管道,从而获取返回值. 具体看官方文档 https://docs.python.or ...
- C或C 如何通过程序执行shell命令并获取命令执行结果?
1 应用场景 最近在实际程序开发中,需要通过程序执行 shell 命令,并获取命令输出内容.但是系统自带的 system 只能返回命令执行成功与否,不能捕获命令输出. 2 扩展性 由于应用场景本就广泛 ...
- linux shell 命令执行结果,如何通过程序执行shell命令并获取命令执行结果?
1 参考资料 1.[c/c++]如何调用[linux]shell命令行命令并获取命令行的输出内容(https://blog.csdn.net/youngstar70/article/details/7 ...
- windows popen 获取不到输出_彻底明白os.system、os.popen、subprocess.popen的用法和区别...
Hello,大家好,沉寂许久,我又来了,这次给大家分享的就是上述三个方法的使用范围和区别,不熟悉的可以在这个地方画一个圆满的句号了. os.system 首先来看这个函数的文档说明 是说是在一个子sh ...
- python 执行命令,并获取结果及执行状态(os.popen、subprocess.Popen、os.system)
使用时的数据记录整理,有问题请跳过 一.模块 os.popen.subprocess.Popen.os.system 二.具体操作 1. os.popen() import osr = os.pope ...
最新文章
- 认识 PHP 的hash函数
- torch 常用函数
- windows经典地雷小游戏(C语言实现)
- JavaScript模块化编程知识分享!
- Spring Data Solr教程:分页
- 深度学习样本标完后图片增强标签内容不变
- HTML基础——HTML
- 个人简历小程序(附源码)
- oracle脱敏脚本
- origin 画热图
- python中三角函数计算
- Keyword Spotting (KWS) | Deep Spoken Keyword Spotting: An Overview
- 提交代码时用prettier自动格式化
- 关于电机编码器的知识汇总,都在这里了!
- 关于javascript的调试
- 第四周小组作业:WordCount优化
- 图像调整亮度饱和度 c语言,数据增强-亮度-对比度-色彩饱和度-色调-锐度 不改变图像大小...
- 机器学习笔记-投票法(Voting)理论与实现
- Linux下的无名管道
- COM编程入门 第一部分——什么是COM,如何使用COM
热门文章
- 报错: eclipse加载maven工程提示pom.xml无法解析org.apache.maven.plugins:maven-resources-plugin:2.3.2...
- AppCompatActivity与toolbar的结合
- MYSQL 练习题
- VS2008环境下CEGUI 0.7.1及相关工具的编译(转载 + 额外的注意事项)
- C++ Code_ImageList
- 【转】SQL SERVER函数无法执行对数据库的修改语句
- Python学习札记(六)
- Linux slab 分配器剖析
- 实时数据库领域中有关数据压缩的认识误区
- “System.Data.Entity.ModelConfiguration.ModelValidationException”类型的未经处理的异常在 EntityFramework.dll 中发生