Это потому, что печатаемые части приглашения \ u
в
\ w
и :
экранированы квадратных скобок. Скобки обычно помещаются вокруг непечатаемых символов, чтобы указать bash не перемещать для них курсор и, таким образом, правильно рассчитать размер приглашения. Итак, теперь курсор не перемещается правильно для разделов печати.
Я рекомендую вам изменить части вашего .bashrc
, которые задают подсказку, а не отменяют ее ... вы можете раскомментировать (удалить #
) эту строку:
#force_color_prompt=yes
а затем измените вторую строку в этом фрагменте:
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
, чтобы она гласила:
PS1='${debian_chroot:+($debian_chroot)}\[\033[00;34m\]\u \[\033[0;37m\]in \[\033[01;32m\][\[\033[0;31m\]\w\[\033[1;32m\]]\[\033[0;37m\]: '
Или, если вы предпочитаете, просто поместите свое переопределение в конец файла:
PS1='\[\033[00;34m\]\u \[\033[0;37m\]in \[\033[01;32m\][\[\033[0;31m\]\w\[\033[1;32m\]]\[\033[0;37m\]: '
Это достигает того, что, как я думаю, вы хотите для меня в Ubuntu 16.04 и не ломается так, как вы описываете (с чем я также сталкивался раньше, играя на своей PS1!)