【发布时间】:2020-01-30 12:14:30
【问题描述】:
我正在使用 node.js 启动一些需要一些时间的 shell 操作,例如:
find / -name myfile
所以我有
require('child_process').spawn('find', ['/', '-name', filename]);
由于我希望子进程在主进程终止时继续运行(假设它还将结果写入文件),因此我使用以下选项:
require('child_process').spawn('find', ['/', '-name', filename], {detached: true, stdio: 'ignore'});
但是,这意味着我无法在进程运行时接收任何数据,至少不能通过 stdout/stderr。我的问题是解决方案是否需要子进程写入某些资源,以及主进程轮询该资源以获取更新,或者是否有一些解决方法可以以不会在子进程之间创建依赖关系的方式管道数据进程和主进程(可能用mkfifo?)。
【问题讨论】:
-
你想在主进程死亡之前或之后查看子进程的输出?
-
理想情况下,我希望能够在主进程死亡之前/之后跟踪子进程的输出
标签: node.js stdout child-process