Xterm.js: Не могу программно очистить терминал

Созданный на 6 сент. 2017  ·  4Комментарии  ·  Источник: xtermjs/xterm.js

Запуск node -e "process.stdout.write ( '\u001Bc' );" должен очистить терминал, но вот что я получу, запустив его в xterm:

screen shot 2017-09-06 at 23 16 44

Если я попытаюсь очистить его с помощью node -e "process.stdout.write ( '\033[2J\033[0f' );" все станет черным.

Есть ли способ его правильно очистить?

typquestion

Все 4 Комментарий

Использование node -e "process.stdout.write ( '\u001Bc' );" или echo -e '\x1bc' указывает bash очистить, и bash возвращает ответ на xterm.js. Думаю, именно поэтому вы снова видите подсказку. Вы можете вызвать term.write('\x1bc') чтобы очистить только интерфейс (xterm.js).

Что делать, если у меня нет доступа к экземпляру xterm?

Я в основном хочу очистить терминал при запуске моего приложения CLI, как я должен это сделать, если он запускается из xterm?

@fabiospampinato похоже, что clear в Linux отправляет '\x1b[H\x1b[2J'

Это означает:

  • Переместите курсор на (1,1) ( CUP )
  • Удалить все на дисплее ( ED )

См. Http://invisible-island.net/xterm/ctlseqs/ctlseqs.html для получения дополнительной информации.

Это работает, спасибо!

Была ли эта страница полезной?
0 / 5 - 0 рейтинги