Node.js порождает дочерний процесс и получает вывод терминала для записи в реальном времени - PullRequest
0 голосов
/ 07 ноября 2018

Я хочу запустить программу под названием «Game.exe» с Node.js child_process, программа будет печатать число каждую секунду на терминал, но она будет случайным образом падать.

Я хочу записать вывод в файл с именем Back.log, но с кодом, который я сейчас пишу, файл журнала никогда не будет создан. В чем проблема?

var game = child_process.spawn('Game.exe')
game.stdout.on('data', function (data) {
    console.log(data);
    fs.appendFile('Back.log', data.toString(), function (err) { })
})
game.stderr.on('data', function (data) {
    console.log(data);
    fs.appendFile('Back.log', data.toString(), function (err) { })
})
game.on('close', function (data) {
    console.log(data);
    fs.appendFile('Back.log', data.toString(), function (err) { })
})

Этот код позиционируется в главном электронном процессе и имеет задержку 3000 мс при использовании setTimeout(startScript, 3000)

...