Werden \[ und \] benötigt?

Werden \[ und \] benötigt?

Ich sehe diese Bash-Prompt-Konfiguration aus dem Internet:

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

Im Dokument heißt es:

\[und \]werden verwendet, um darauf hinzuweisen, dass der Inhalt nicht druckbar ist (Steuerzeichen).

\[Wenn ich alle „ und“ \]aus der Eingabeaufforderung oben entferne , PS1wird daraus:

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

Und es funktioniert immer noch! Also, sind die \[und \]erforderlich? Und was sind die Unterschiede, wenn ich sie alle entferne?

Antwort1

Haben Sie versucht, Ihren Verlauf zu durchsuchen ( Ctrl+Poder )? Sobald die Zeile länger ist, kann sie die Eingabeaufforderung überschreiben, wenn sie die korrekte Länge nicht kennt.

verwandte Informationen