Как мне не печатать команду в терминале, используя node-pty и xterm?

Я использую xterm.js, node-pty и электрон для создания узла, похожего на терминал (аналогичный repl.it). Я использую этот фрагмент кода для запуска файла и вывода его на терминал:

ptyProcess.write("vm.runInNewContext(fs.readFileSync('dir/file.js', 'utf8'))\r")

Но я всегда печатаю это на терминале:

> vm.runInNewContext(fs.readFileSync('dir/file.js', 'utf8'))
5
>

Я знаю, что ptyProcess.write() пишет в терминал, но есть ли способ запустить команду, не выводя ее в терминал? Как я могу заставить терминал печатать что-то вроде этого:

>
5
>

person corasan    schedule 27.06.2017    source источник
comment
Вы когда-нибудь находили решение этой проблемы?   -  person zero_cool    schedule 09.05.2021


Ответы (1)


используйте ptyProcess.on('data', function(data){}) для фильтрации данных

Ссылка на документы xterm.js: onevent-callback

person 陈威特    schedule 31.07.2017
comment
Но как выполнить его в оболочке, не выводя его в оболочку? - person zero_cool; 09.05.2021