Special Prompt Strings
Bash processes the values of the built-in shell variables PS1, PS2, and PS4 for the following special escape sequences:
Escape sequence | Description |
|---|---|
\a | An ASCII BEL character (octal 07). |
\A | The current time in
24-hour |
\d | The date in “weekday month day” format. |
\D{
| The date as specified
by the |
\e | An ASCII Escape character (octal 033). |
\h | The hostname, up to the first period. |
\H | The full hostname. |
\j | The current number of jobs. |
\l | The basename of the shell’s terminal device. |
\n | A newline character. |
\r | A carriage-return character. |
\s | The name of the shell (basename of $0). |
\t | The current time in
24-hour |
\T | The current time in
12-hour |
\u | The current user’s username. |
\v | The version of Bash. |
\V | The release (version plus patch level) of Bash. |
\w | The current directory, with $HOME abbreviated as ~. |
\W | The basename of the current directory, with $HOME abbreviated as ~. |
\! | The history number of this command. |
\# | The command number of this command. |
\$ | If the effective UID is 0, a # ; otherwise a $. |
\@ | The current time in 12-hour a.m./p.m. format. |
\
| The character
represented by octal value
|
\\ | A literal backslash. |
\[ | Start a sequence of nonprinting characters, such as for highlighting or changing colors on a terminal. |
\] | End a sequence of nonprinting characters. |
In Bash, the escape sequences are processed first. After that, variable, command, and arithmetic substitutions are performed if the promptvars shell option ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access