节点 child_process 静音、读取和处理父级中的子级日志

Node child_process mute, read and handle children logs within parent

我有一个生成子节点的父脚本。

let child = child_process.fork('foo.js', ['param1', param2])
child.on('message', data => {
//  console.log(data);
})
child.on('exit', code => {
  resolve(true)
})

最初我认为 child.on('message') 事件侦听器捕获并处理消息,但这里不是这种情况。默认情况下,子项仅使用父 process.stdout.write 函数并将内容记录到父控制台。

您可以在子 fork 上将 silent 设置为 true 并监听 stdout 管道。

fork('./foo.js',{silent: true})
    .stdout.on('data', data => console.log(data.toString()));