![São \[ e \] necessários?](https://rvso.com/image/1469924/S%C3%A3o%20%5C%5B%20e%20%5C%5D%20necess%C3%A1rios%3F.png)
Eu vejo esta configuração do prompt do bash na Internet:
PS1="\[\e[0m\]\[\e[0;92m\]\u\[\e[91m\]@\[\e[93m\]\h\[\e[0m\]:\[\e[0;94m\]\w\[\033[1;30m\]\[\e[0m\]$ "
Como diz o documento:
\[
e\]
são usados para perceber que o conteúdo interno não pode ser impresso (caracteres de controle).
Quando eu removo todos os \[
e \]
do prompt acima, PS1
torna-se:
PS1="\e[0m\e[0;92m\u\e[91m@\e[93m\h\e[0m:\e[0;94m\w\033[1;30m\e[0m$ "
E ainda funciona! Então, faça o \[
e \]
necessário? e quais são as diferenças se eu remover todos eles?
Responder1
Você já tentou pesquisar seu histórico ( Ctrl+Pou ↑)? Quando a linha for mais longa, ela poderá sobrescrever o prompt se não souber seu comprimento correto.