Как открыть оболочку bash с помощью Node.js - PullRequest
0 голосов
/ 24 мая 2019

Я хочу иметь возможность открывать программу оболочки, используя Node.js. Когда я запускаю bash из терминальной программы, я захожу в оболочку примерно так:

enter image description here

Но когда я запускаю bash с помощью Node.js, я предполагаю, что он предполагает, что я не в терминальной программе или чем-то еще, поэтому он на самом деле не открывает оболочку, а просто вводит пустоту. Вот программа Node.js (на самом деле довольно простая):

const net = require('net');
const cp = require('child_process');

const server = net.createServer(s => {

  const bash = cp.spawn('bash');
  s.pipe(bash.stdin, {end:false});
  bash.stdout.pipe(s);
  bash.stderr.pipe(s);


});

server.listen('4004');

Если я запустил вышеуказанный сервер, а затем подключился к нему с помощью netcat:

nc localhost 4004

тогда я просто получаю пустоту, в которую я могу напечатать и получить результаты, но я не получаю программу оболочки или программу, подобную терминалу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...