LINUX.ORG.RU

Ошибка отображения при пролистывании команд в терминале

 


0

1

Иногда при пролистывании команд стрелками вверх/вниз к префиксу приклеивается часть последней пролистанной команды.

Командная строка при пролистывании вверх ведёт себя примерно так:

slarti@CLOUD: echo AAAAAAAAAA

slarti@CLOUD: echo BBBBBBBBBB

slarti@CLOUD: echo CCCCCCCCCC

slarti@CLOUD: echo CCCC echo DDDDDDDDDD

slarti@CLOUD: echo CCCC echo EEEEEEEEEE

Если нажать Enter, то префикс командной строки восстанавливается

slarti@CLOUD:

Условия возникновения ситуации сложно определить:

  • это не зависит от скорости пролистывания команд
  • это не какая-то конкретная длина строки триггерит ошибку (происходит при разных длинах: коротких и длинных)
  • это происходит с любой шириной окна и переменной COLUMNS
  • это происходит у регулярного пользователя и у root

Проверял локально, клиентами putty и termius (android) через ssh (на хосте OpenSSH 7.9).

На хосте Debian 4.19.194-3 (2021-07-18) x86_64 и bash 5.0.3

Проблема оказалась в дефолтной строке $PS1 в настройках профиля BASH. Исправил в .bashrc написание кодов цветов с [\033[0m] на [\e[0m] и так далее. Проблема решена

yohabi ()
Ограничение на отправку комментариев: только для зарегистрированных пользователей