В моей системе Debian /usr/bin/clear
и /usr/bin/tput
являются частью пакета ncurses-bin
, а /usr/bin/clear_console
— частью пакета bash
.
Почему по умолчанию .bash_logout
предполагается, что пакет ncurses-bin
установлен?
Кроме того, при запуске с виртуального терминала Linux (не с последовательного или псевдотерминала)clear_console(1)
также будет очищаться буфер обратной прокрутки (в дополнение к отправке clear
/ cl
экранирования terminfo ). ].
Он будет делать это, переключаясь туда и обратно на другой vt [1] и отправляя\e[3J
"flush scrollback" escape.
В более новых системах clear
и tput clear
также будут отправлять этот \e[3J
escape (, но не во многих дистрибутивах, которые все еще используются, например. Centos 7 или Debian 9 --для последнего, переменная окружения TERM
должна быть установлена на linux3.0
, что не является значением по умолчанию ).
См. источникclear_console
здесь .
[1] который может быть побежден параметром загрузки vgacon.scrollback_persistent=1
, если ваше ядро было скомпилировано с опцией VGACON_SOFT_SCROLLBACK
(«Включить буфер прокрутки в системной ОЗУ» ).
После продолжительного тестирования выяснилось, что проблема связана с использованием мыши Logitech, в моем случае MX Master 2. Замена logitech какой-нибудь случайной проводной мышью, похоже, полностью решила эту проблему. Кажется, что отсутствие официальных драйверов для Linux может вызвать серьезные проблемы при использовании MX2. Есть несколько проектов (piper, solaar ), которые пытаются обеспечить поддержку Linux, но я еще не тестировал ни один из них, поэтому не уверен, насколько они надежны и решат ли они мою проблему.
Кажется, мне просто нужно купить хорошую проводную мышь с поддержкой Linux. Рекомендации приветствуются!