【发布时间】:2020-04-23 15:01:36
【问题描述】:
我有一个命令,它提供有关正在运行的进程的诊断信息。我想在进程崩溃之前触发/执行此命令并将输出捕获到标准输出/文件。
但是,此命令不能作为其监视的进程的子进程运行。该命令正在检测这一点。它需要作为一个单独的父进程进行分叉。
有没有办法产生一个新的进程,执行命令但不是作为一个孩子?
【问题讨论】:
-
打开一个文件并使用
dup2将子进程的stdout文件替换为新文件?你有没有尝试过这样的事情? -
@StephenNewell 必须承认我以前从未做过这样的事情。目前我刚刚使用 pipe() 和 popen() 来执行命令,当我发现我无法在同一个进程中运行它时。