Я хочу отслеживать данные реального времени, поступающие из дочернего процесса в узле. Я могу сделать это без проблем со следующим фрагментом кода.Размеры дочерних процессов stdout и stderr в Node.js
var fs = require('fs');
var spawn = require('child_process').spawn;
(function(){
"use strict";
var processMonitor, processListen, processDeauth;
var parseStreamDataIn = function(data) {
var str = data.toString('utf8');
console.log(str);
};
var init = function() {
processMonitor = spawn('trafficmon' , ['-w'], {'shell': '/bin/bash'});
processMonitor.stdout.on('data', function (data) {
//trafficmon uses stderr, nothing needed here...
});
processMonitor.stderr.on('data', parseStreamDataIn);
processMonitor.on('close', function (code) {
processMonitor = null;
});
};
init();
})();
Проблема в том, что данные возвращаются и вошли в parseStreamDataIn() режутся до 80 символов (столбцы) в строку, оставляя половину данных я хочу отсутствующие.
Пример trafficmon бега самого по себе в окне терминала (Это было вручную расширено до широких 120 символов)
EC:XX:XX:XX:XX:XX 131 1 0 0 1 128 120614 HTTPS SSL cluster1.xxxxx.com
Примера моего сценария узла под управлением той же команду, и каротажные данные в тот же терминал размера окно.
EC:XX:XX:XX:XX:XX 131 1 0 0 1 128 120614 HTTPS SSL clus
Как вы можете видеть, хвостовой конец струны отрубается.
Есть ли способ сообщить, что моя дочерняя оболочка процесса возвращает более 80 столбцов в строке?
Это именно то, что мне нужно, спасибо! –