Javascript 如何使用“child_process.spawn”的管道选项?
当我阅读节点的文档时,我发现了这个选项 将Javascript 如何使用“child_process.spawn”的管道选项?,javascript,node.js,Javascript,Node.js,当我阅读节点的文档时,我发现了这个选项 将stdin设置为pipe时很容易理解。 但是当您想将stderr或stdout设置为管道时 child_process.spawn(cmd, args, { stdio: ['ignore', 'pipe', 'pipe'] }) // How to use the pipe? // Usage... 当stderr和stdout都设置为pipe时,您能给我举个例子吗 child_process.spawn(cmd, args, { stdio: [
stdin
设置为pipe
时很容易理解。
但是当您想将stderr
或stdout
设置为管道时
child_process.spawn(cmd, args, { stdio: ['ignore', 'pipe', 'pipe'] })
// How to use the pipe?
// Usage...
当stderr
和stdout
都设置为pipe
时,您能给我举个例子吗
child_process.spawn(cmd, args, { stdio: ['ignore', 'pipe', 'pipe'] })
// How to use the pipe?
// Usage...
您拥有的代码看起来应该已经将
/dev/null
附加到stdin,并将stdin+stdout管道连接到父进程的各个流。这样不行吗
同样的事情可以通过几种不同的方式实现
示例:将als-a的stdout+stderr导入当前节点进程的stdout+stderr,并使用与子命令相同的退出代码终止节点进程
var spawn = require("child_process").spawn;
var ls = spawn("ls -a");
ls.stdout.pipe(process.stdout);
ls.stderr.pipe(process.stderr);
ls.on("exit", function(code) {
process.exit(code);
});
我不明白。你的代码不正是你想要的吗?@jgillich我更新了这个问题。我想知道如何使用这根管子。