node js 中怎么样把spawn产生的子进程中数据返回给node js主程序
发布于 6 年前 作者 quanpf2481 2290 次浏览 来自 问答

例如程序: #include <stdio.h> #include <unistd.h>

int main() { int cntr = 0; while(1) { sleep(1); cntr++; printf(“cntr = %d\n”, cntr); }

} 编译成getpsdata文件后, 然后通过: var spawn = require(‘child_process’).spawn; var ps = spawn(’./getpsdata’, {stdio: [‘pipe’, ‘pipe’, ‘pipe’]});

if(ps.stdout !== null) { ps.stdout.on(‘data’, function(data) { console.log(‘data’, data.toString()); }); }else{ console.log(ps.stdout); } // ps.stdout.on(‘data’, function(data) { // console.log(‘data’, data.toString()); // });

if(ps.stderr !== null) { ps.stderr.on(‘data’, function(data) { console.log(‘data’, data.toString()); }); }else{ console.log(ps.stderr); }

// ps.stderr.on(‘data’, function(data) { // console.log(‘error’, data.toString()); // });

ps.on(‘close’, function(code) { console.log(‘close’, code); });

ps.on(‘exit’,function(code) { console.log(‘exit’, code); });

ps.on(‘error’, function(code) { console.log(‘error’, code); }); 我想把getpsdata里面的打印的数据传给node的主程序中,应该怎么做呢???

1 回复

试试 shelljs 模块,应该能解决你的问题

回到顶部