首页 > process.stdout.pipe(child_process.stdout)失效

process.stdout.pipe(child_process.stdout)失效

const spawn = require('child_process').spawn
io.on('connection', (socket) => {
  const shell = spawn('bash')
  const output = function(msg) {
    socket.emit('output', msg.toString())
  }
  shell.stdout.on('data', output)
  shell.stderr.on('data', output)
  
  // shell.stdout.pipe(process.stdout)
  // 对子进程进行操作,父进程能看到子进程输出
  
  // 子进程看不到父进程的输出 好像两个stdout不是同一个类型的对象?
  process.stdout.pipe(shell.stdout)
  ......
})

或者有什么其他办法能让子进程接受到process的输出
ps: 没办法用process.send,process.emit('data',...)

【热门文章】
【热门文章】