【发布时间】:2019-01-10 01:22:25
【问题描述】:
我正在从命令行运行一个程序。这个程序打印出我的一些 CPU 的统计数据(如果有人感兴趣,可以链接到程序:https://github.com/opcm/pcm)。程序不退出。它会在同一个终端定期打印更新的统计信息。
我正在尝试在我自己编写的另一个程序中使用程序正在检索的这些统计信息。我正在编写的程序只是应该在 python 中实时绘制这些 CPU 统计数据与时间的关系图。
我不确定如何在我的程序中实时检索和使用打印到控制台的统计信息。我知道我可以通过键入./program.x > output.txt 将输出直接输出到文本文件而不是控制台。
我的第一个想法是将输出的统计信息推送到文本文件,同时在我的程序中从该文本文件中读取。但这感觉像是一种蛮力方法,我不确定它是否会起作用。
有谁知道我如何在另一个程序中使用一个程序的实时输出?
【问题讨论】:
-
这听起来像是管道的工作。您是否为您的用例考虑过管道?
-
@CharlesLandau 我从未听说过或使用过管道。我会查一下它们是什么/它们是如何使用的。
-
我会用管道发布答案
-
间接复制:stackoverflow.com/questions/375427/…,因为输出应该从子进程中读取。
-
@Kingsley 我寻找了类似的问题,但找不到任何东西。也许我的问题的措辞是问题所在,以及为什么我没有得到相关的帖子(或者只是我缺乏管道知识)。我很抱歉。