exe c Этот метод порождает подоболочку и выполняет команду в этой оболочке и буферизует сгенерированные данные. Когда дочерний процесс завершится, функция обратного вызова будет вызываться с: буферизованными данными, когда команда будет выполнена успешно
При запуске netstat -an 127.0.0.1 из вашего cmd вы можете видеть, что команда все еще продолжает выполняться, пока вы не отправите сигнал остановки ...
Итак, если вы хотите получить вывод в буфер, я предлагаю вам создать cmd.exe и выполнить netstat.exe из этого
function run_cmd(cmd, args, cb, end) {
var spawn = require('child_process').spawn,
child = spawn(cmd, args),
me = this;
child.stdout.on('data', function (buffer) { cb(me, buffer) });
child.stdout.on('end', end);
}
// Run C:\Windows\System32\netstat.exe -an
var foo = new run_cmd(
'netstat.exe', ['-an'],
function (me, buffer) { me.stdout += buffer.toString() },
function () { console.log(foo.stdout) }
);
что-то вроде этого