【发布时间】:2019-09-19 07:20:45
【问题描述】:
我希望能够捕获我没有源代码的 cli 程序的输出(在它终止之前)。
我发现的所有东西都是用管道完成的,据我所知,它只会在刷新或退出程序时发送输出。 我在 Codeproject 上找到的一种解决方案仅适用于 Windows。
【问题讨论】:
-
您需要使用伪 tty 来使程序取消缓冲其输出。您可以使用
Expect附带的unbuffer程序来执行此操作。 -
所以你可以使用
popen("unbuffer cli_program", "r") -
这正是我所需要的。谢谢!
标签: c++ linux command-line-interface ipc