首页 > 后端开发 > Python教程 > 如何在 Python 中将子进程输出捕获为字符串?

如何在 Python 中将子进程输出捕获为字符串?

Susan Sarandon
发布: 2024-12-02 21:27:12
原创
987 人浏览过

How Can I Capture Subprocess Output as a String in Python?

在字符串中捕获子进程输出

捕获通过Python的subprocess.Popen启动的系统调用的输出并将其存储在字符串中, Python 根据您使用的版本提供了多个选项。

Python 2.7 或 Python 3:

利用 subprocess.check_output() 函数:

from subprocess import check_output
output = check_output(["ntpq", "-p"])
登录后复制

Python 2.4-2.6:

使用Popen 命令的通信方法:

import subprocess
process = subprocess.Popen(["ntpq", "-p"], stdout=subprocess.PIPE)
output, _ = process.communicate()
登录后复制

请注意,在指定命令时,请将可执行文件和选项分成一个列表,例如 ["ntpq", "-p"],因为 Popen 不会调用 shell。

以上是如何在 Python 中将子进程输出捕获为字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板