2

Я вижу этот конфиг командной строки bash из интернета:

PS1="\[\e[0m\]\[\e[0;92m\]\u\[\e[91m\]@\[\e[93m\]\h\[\e[0m\]:\[\e[0;94m\]\w\[\033[1;30m\]\[\e[0m\]$ "

Как говорится в документе:

\[ и \] используются, чтобы заметить, что содержимое внутри не для печати (управляющие символы).

Когда я удаляю все \[ и \] из подсказки выше, PS1 становится:

PS1="\e[0m\e[0;92m\u\e[91m@\e[93m\h\e[0m:\e[0;94m\w\033[1;30m\e[0m$ "

И это все еще работает! Итак, нужны ли \[ и \] ? и каковы различия, если я уберу их все?

1 ответ1

2

Вы пытались искать свою историю (Ctrl+P или )? Если строка длиннее, она может перезаписать подсказку, если не знает ее правильную длину.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .