NodeJS child_process.spawn () Ошибка открытия терминала: неизвестно - PullRequest
0 голосов
/ 05 января 2020

Я пытаюсь выполнить простую программу "htop" из NodeJS, используя метод child_process .spawn (), на моем локальном рабочем столе Ubuntu все работает нормально, но когда я перемещаю код на сервер Ubuntu (цифровой океан), выход child_process с кодом 1: «Ошибка открытия терминала: неизвестно». Вот простой пример кода

   const { spawnSync, spawn } = require('child_process');
    const htop = spawn("htop", [], {
        detached: true, 
        shell: false, 
        windowsHide: true,
    });

    htop.stdout.on('data', (dataBuffer) => {
        socket.emit('htop log', dataBuffer.toString());
    });

Кто-нибудь знает, в чем проблема?

1 Ответ

0 голосов
/ 06 января 2020

Решено, В случае, если кому-то это понадобится в будущем, просто используйте пакет NodePTY вместо child_process.spawn (), он прекрасно работает для меня

...