Ответ 1
Я видел это поведение, когда вы изменяете размер окна Putty, пока выполняется другая команда, поскольку bash не получает сигнал, указывающий на то, что оно изменилось.
Если это проблема, добавив:
shopt -s checkwinsize
должен уйти.
Я использую PuTTY для входа на сервер Debian. У меня есть эта странная проблема: когда команда, которую я набираю, становится слишком длинной, она не обходится и не запускает новую строку. Вместо этого он начинается с начала той же строки и начинает перезаписывать приглашение, а затем - начало команды.
Команда будет работать нормально, но это действительно раздражает, я предполагаю, что есть какая-то настройка, которая исправит это для меня?
Я видел это поведение, когда вы изменяете размер окна Putty, пока выполняется другая команда, поскольку bash не получает сигнал, указывающий на то, что оно изменилось.
Если это проблема, добавив:
shopt -s checkwinsize
должен уйти.
Я просто решил это сам.
В командной строке PS1 появилось несколько цветовых экранов:
LTGREEN="\033[40;1;32m"
LTBLUE="\033[40;1;34m"
CLEAR="\033[0m"
LIGHT_GRAY="\033[40;1;33m"
export PS1="$LTGREEN\[email protected]\h:$LIGHT_GRAY\w$CLEAR ❯ "
Проблема заключается в том, что цветовые литералы не заключены в скобки. Размещение экранированных скобок вокруг них полностью устраняет проблему:
LTGREEN="\[\033[40;1;32m\]"
LTBLUE="\[\033[40;1;34m\]"
CLEAR="\[\033[0m\]"
LIGHT_GRAY="\[\033[40;1;33m\]"
export PS1="$LTGREEN\[email protected]\h:$LIGHT_GRAY\w$CLEAR ❯ "
Надеюсь, что это поможет.
Попробуйте нажать Ctrl + L. (Или, может быть, Alt + L - something + L). Если я правильно помню, это повторяет код, чтобы выяснить размер вашего терминала и соответствующим образом настроить.
Try:
eval $(resize)
ََََََََََ
Ctrl-l
Ctrl-l работает. Я предполагаю, что шпатлевка нужна
Это решение работало для меня:
Добавьте следующий фрагмент к .bashrc
:
if [ $(tty) == '/dev/ttyS0' ]; then
trap resize DEBUG
fi
Ничего общего со шпателем не является "bash" ism.
Это очень полезно, когда вы привыкли к этому, но если это вас беспокоит, вы можете переключиться на "ksh", который делает что-то другое с длинными командами (не уверен, что на Debian!)