捕获python子进程的输出

克里古

我正在尝试捕获通过python脚本执行的命令的输出。我知道有很多有关如何执行此操作的示例,但我无法找到解决方案。

例子:

该示例有效:

#!/usr/bin/python
import subprocess
process = subprocess.Popen(['whoami'], stdout=subprocess.PIPE)
stdout = process.communicate()[0]
print 'STDOUT:{}'.format(stdout)

结果:

houhou@box:~/Documents$ python example.py
STDOUT:houhou

这不起作用:

我需要运行以下命令:'nginx -t'

import subprocess
process = subprocess.Popen(['nginx', '-t'], stdout=subprocess.PIPE)
stdout = process.communicate()[0]
print 'STDOUT:{}'.format(stdout)

结果:

houhou@box:~/Documents$ python example.py
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
STDOUT:

我不知道如何捕获此输出。在python可以读取它之前,似乎显示了表明nginx config正常的消息。任何帮助,将不胜感激。

干杯。

阿罗克·塔库尔

'zondo'在评论中正确预测,'nginx'将上述消息发送给stderr,您也可以修改代码以阅读该消息-

>>> process = subprocess.Popen(['nginx', '-t'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
>>> out,err = process.communicate()
>>> print out

>>> print err
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

捕获python子进程的输出

来自分类Dev

在python子进程中捕获logger.info输出?

来自分类Dev

如何捕获子进程的输入和输出?

来自分类Dev

Python获取子进程的输出

来自分类Dev

Python获取子进程的输出

来自分类Dev

捕获python3中子进程的所有输出

来自分类Dev

如何异步捕获长时间运行的 Python 子进程的输出

来自分类Dev

没有\ n的python子进程输出

来自分类Dev

复制来自Python子进程的终端输出

来自分类Dev

Python子进程/ Popen标准输出被截断

来自分类Dev

如何从Python子进程收集输出

来自分类Dev

如何从python子进程检索输出

来自分类Dev

Python子进程/ Popen标准输出被截断

来自分类Dev

检查子进程python3的输出

来自分类Dev

带/ usr / bin / time的Python子进程:如何捕获时序信息,但忽略所有其他输出?

来自分类Dev

异步捕获多个进程的输出

来自分类Dev

异步捕获多个进程的输出

来自分类Dev

Python:如何捕获子进程中收到的UNIX信号?

来自分类Dev

Python:将 python 脚本作为子进程运行并获取输出

来自分类Dev

在父进程中捕获子进程异常

来自分类Dev

通过子进程在python脚本之间传输腌制的对象输出。

来自分类Dev

阻止输出文件的Python子进程bash命令

来自分类Dev

通过子进程在python脚本之间传输腌制的对象输出。

来自分类Dev

在python 2.7中监视并行子进程的输出-PocketSphinx

来自分类Dev

无法使用python存储子进程的终端输出

来自分类Dev

如何获取包含管道的Python子进程命令的输出?

来自分类Dev

Python 2子进程:无法从readline获取输出

来自分类Dev

Python子进程输出变量错误;变量未定义

来自分类Dev

读取输出时,Python子进程通信冻结

Related 相关文章

热门标签

归档