【发布时间】:2020-05-21 15:36:07
【问题描述】:
在 Python 3 中,我该怎么做:
- 执行一个进程并将其标准输出打印到标准输出,
- 监控标准输出以等待一些文本,并且
- 在找到文本后继续执行我的 Python 程序,不要终止进程,也不要停止将其打印到标准输出。
live output from subprocess command 不是重复的,因为那里的所有答案都不允许您的 Python 代码继续并且仍然打印进程的标准输出。
我想解决方案将涉及某种线程、协程或任务。
【问题讨论】:
-
有点间接的方法所以只是要评论,但是如果你在 os 层分叉怎么办?使用 & 标志执行流程?不知道会不会起作用。只是一个想法。 bashitout.com/2013/05/18/Ampersands-on-the-command-line.html
-
@jordanm:StackOverflow 明确表示,如果问题已关闭,您可以打开一个新问题。请重新考虑您的操作是否有用。
-
@Neil:有趣的想法,但我认为它不会奏效,因为我仍然需要以某种方式处理
stdout数据。此外,我宁愿不通过 shell 运行我的命令(通常是个坏主意)。 -
@Timmmm 我没有意识到政策已经改变。过去,您打算编辑现有问题并投票重新打开。关闭 -> 重复按钮用于实际表示“完全重复”
标签: python subprocess