例如程序: #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的主程序中,应该怎么做呢???
试试 shelljs 模块,应该能解决你的问题