ss64.com parece tener la mejor referencia que he encontrado.
Explica las siguientes variables:
\d The date, in "Weekday Month Date" format (e.g., "Tue May 26").
\h The hostname, up to the first . (e.g. deckard)
\H The hostname. (e.g. deckard.SS64.com)
\j The number of jobs currently managed by the shell.
\l The basename of the shell's terminal device name.
\s The name of the shell, the basename of $0 (the portion following
the final slash).
\t The time, in 24-hour HH:MM:SS format.
\T The time, in 12-hour HH:MM:SS format.
\@ The time, in 12-hour am/pm format.
\u The username of the current user.
\v The version of Bash (e.g., 2.00)
\V The release of Bash, version + patchlevel (e.g., 2.00.0)
\w The current working directory.
\W The basename of $PWD.
\! The history number of this command.
\# The command number of this command.
\$ If you are not root, inserts a "$"; if you are root, you get a "#" (root uid = 0)
\nnn The character whose ASCII code is the octal value nnn.
\n A newline.
\r A carriage return.
\e An escape character.
\a A bell character.
\\ A backslash.
\[ Begin a sequence of non-printing characters. (like color escape sequences). This
allows bash to calculate word wrapping correctly.
\] End a sequence of non-printing characters.
El \[ ... \]
define una serie de caracteres que no se imprimen. Deben realizar un seguimiento correcto de la posición del cursor.
El \e
en su mensaje inicia una secuencia de escape. Más sobre ésos aquí (nota "Esc" en esa página es la \e
secuencia).
- Nota: nunca me han gustado las secuencias de escape. Use
tput
para obtener el código de escape para usted.
${debian_chroot:+($debian_chroot)}
es la expansión de parámetros. Ver aquí
- Escribe
($debian_chroot)
si $debian_chroot
se establece de otra manera nada.