Tôi đang cố tạo kịch bản Node.js để phân tích mức sử dụng đĩa. Đối với điều này, tôi vỏ ra du
, nhưng tôi gặp khó khăn trong việc tìm ra cách đọc đầu ra từ dòng xử lý con theo dòng. Đây là những gì tôi đã cố gắng cho đến nay:Cách đọc từ dòng child_process bằng dòng trong 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'
chỉ đọc khối dữ liệu, và trong khi readline
cho là nên chia đầu vào của nó theo dòng, không, thay vào đó tôi có được các dữ liệu chính xác cùng (du.stdout trả về một bộ đệm, nhưng gọi .toString()
trên nó mang lại cho tôi cùng một dữ liệu tôi nhận được với linereader
).
Ah, tôi hiểu. Kinda buồn :) – mikl