Как читать из дочернего _процесса построчно в Node.js?

Я пытаюсь создать сценарий Node.js для анализа использования диска. Для этого я раскошелился на du, но у меня возникли проблемы с тем, чтобы понять, как читать вывод дочернего процесса построчно. Вот что я пробовал до сих пор:

var spawn = require("child_process").spawn,
    rl = require('readline'),
    du = spawn('du', ['/home']);
    linereader = rl.createInterface(du.stdout, du.stdin);

// Read line by line.
//du.stdout.on('data', function (data) {
linereader.on('line', function (data) {
  console.log(data);
});

du.stdout.on('data'просто считывает фрагменты данных, и хотя readlineпредположительно должен разбивать ввод построчно, он этого не делает, вместо этого я получаю точно такие же данные (du.stdout возвращает a буфер, но вызов .toString()дает мне те же данные, что и с linereader).

8
задан mikl 19 April 2012 в 14:09
поделиться