使用 node.js 从标准输出实时读取

Душ*_*вић 3 console stdout file node.js

我有一个问题,我需要实时读取控制台输出。我有一个需要执行的文件,尝试执行类似的操作test.exe > text.txt,但是当我尝试在 exe 文件运行时读取时,我看不到任何内容,直到 exe 完成并同时写入所有行。我需要使用 node.js 来完成此操作

msc*_*dex 5

您应该能够使用child_process.spawn()来启动进程并从其stdout/stderr流中读取:

var spawn = require('child_process').spawn;
var proc = spawn('test.exe');
proc.stdout.on('data', function(data) {
  process.stdout.write(data);
});
proc.stderr.on('data', function(data) {
  process.stderr.write(data);
});
proc.on('close', function(code, signal) {
  console.log('test.exe closed');
});
Run Code Online (Sandbox Code Playgroud)