从已执行的应用程序获取stdout

top*_*erg 6 c linux stdout execvp

有没有人知道如何捕获输出(我认为它的标准输出)execvp而不是系统在终端中打印它(在Linux上的c)?

Bri*_*ach 6

execvp 替换内存中当前运行的进程.没有"捕捉"输出.

我怀疑你正在尝试从现有进程运行外部进程,并解析其输出.为此你需要使用popen()哪个fork()然后a exec(),返回a FILE *来读取(这将是stdout你刚刚运行的进程).