После того, как я редактировал мой .bashrc, я получил призраки в своем приглашении

Я добавил следующее к своему ~/.bashrc :

 export PS1="\e[0;35m[\u@\h \W]\$ \e[m " echo -e "\e[0;35mYOU ARE ON THE LIVE SERVER !!\e[0m" 

к сожалению, теперь, каждый раз, когда я вставляю что-то долгое в bash, он появляется на экране, и символы призрачной tab появляются по всему экрану, а линии едят друг друга, кто-нибудь знает, почему?

  • Debian live install '' Как запустить установщик на терминале без прерывания живой сессии? ''
  • Использование клавиш VI для редактирования команд оболочки в UNIX
  • Определите, сколько из Unicode поддерживает мой терминал, даже через экран
  • Отключить гашение экрана на текстовой консоли
  • Как создать кросс-платформенные команды привязки клавиатуры?
  • Горячие клавиши Ch, Cm в bash
  • Фильтрация результатов grep с помощью путей, содержащих папку1 / folder2, и обрезание текущего пути папки из набора результатов
  • Как начать cinelerra на Debian?
  • 2 Solutions collect form web for “После того, как я редактировал мой .bashrc, я получил призраки в своем приглашении”

    В прошлом я также столкнулся с проблемой кодирования цветовых кодов ANSI с навигацией по командной строке; вам нужно поместить коды ANSI вокруг \[ \] чтобы командная оболочка могла знать, как (не) принимать их во внимание как часть входной строки.

    Как в:

     export PS1="\[\e[0;35m\][\u@\h \W]\$\[\e[m\] " echo -e "\[\e[0;35m\]YOU ARE ON THE LIVE SERVER !!\[\e[0m\]" 

    Некоторое объяснение, почему оболочке нужны \[ и \] : Чтобы нарисовать приглашение в правильных положениях в матричной матрице терминала, оболочке нужно знать правильную длину строки приглашения, которая представляет собой количество печатаемых символов, т. Е. не управляющие символы или последовательности символов.

    Однако оболочка не знает, какие последовательности символов терминал считает пригодными для печати. Поэтому необходимо предоставить подсказки оболочке, чтобы различать печатные и непечатаемые последовательности, что является целью \[ и \] .

    Я как-то исправил это, я использовал этот веб-сайт http://bashrcgenerator.com/ и сделал это с длинными рукавами, он намного длиннее, но если вы дважды щелкните элементы, которые вы можете покрасить, и он работает

    Я закончил с

      export PS1="\[\033[38;5;129m\][\u@\h\[$(tput sgr0)\]\[\033[38;5;15m\] \[$(tput sgr0)\]\[\033[38;5;129m\]~]\\$\[$(tput sgr0)\]\[\033[38;5;15m\] \[$(tput sgr0)\]" 
    Interesting Posts

    CentOS 7 – Невозможно установить / var / tmp как bind

    Запуск проприетарной прошивки в виртуализованной среде, но не в среде хоста

    Проверьте, как долго использовался HDD в LINUX

    Разрешение исходящих писем, которые будут доставлены только на localhost

    Создание дискового устройства в файле

    macbook-подобный мультитач-трекпад на Linux Mint Cinnamon с touchhegg

    Samba аутентифицирует пользователей от контроллера домена Windows (без /etc/nsswitch.conf)

    Терминал: создать загрузочный USB из iso

    Как устранить неприятности при запуске графического интерфейса с терминала?

    Команды для определения уровня использования сервера

    Создание нестандартных разделов LVM во время установки (Debian)?

    Не удалось установить гостевые дополнения VirtualBox в Кали

    DirectoryIndex не перенаправляет

    Нужно ли в этом случае установить бит uid?

    Как я могу воспроизвести звук, когда выполнение скрипта будет готово?

    Linux и Unix - лучшая ОС в мире.