Próbuję utworzyć skrypt Node.js do analizy użycia dysku. W tym celu wypuszczam numer du
, ale mam problem z ustaleniem, jak odczytać dane wyjściowe z podrzędnej linii proces po linii. Oto, co starałem dotąd:Jak odczytać wiersz child_process po linii w pliku Node.js?
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'
właśnie czyta fragmenty danych, a jednocześnie readline
powinno rzekomo podzielić swoje wejście po linii, nie, zamiast uzyskać te same dane (du.stdout zwraca bufor, ale wywołanie na nim .toString()
daje mi te same dane, które otrzymałem z linereader
).
Ah, rozumiem. Trochę smutne :) – mikl