【发布时间】:2016-01-26 10:02:20
【问题描述】:
玩弄 child_process,我想将生成的 cp 输出通过管道传输到自定义流。
我不明白为什么在第一种情况下管道不起作用,而在第二种情况下。
预设
const cp = require('child_process');
const process = require('process');
const stream = require('stream');
var writable = new stream.Writable();
writable._write = function (data) {
console.log(data.toString());
};
不起作用
var spawnedProcess = cp.spawn('ls', [], {
stdio: [process.stdin, process.stdout, process.stderr]
});
process.stdout.pipe(writable);
输出登录到终端,但不通过管道输出。
有效
var spawnedProcess = cp.spawn('ls', [], {});
spawnedProcess.stdout.pipe(writable);
管道输出到writable。
【问题讨论】:
标签: node.js child-process