When executing interactively, bash displays the primary prompt PS1 when it is ready to read a command, and the secondary prompt PS2 when it needs more input to complete a command. Bash allows these prompt strings to be customized by inserting a number of backslash-escaped special characters that are decoded as follows:
\a an ASCII bell character (07)
\d the date in ``Weekday Month Date'' format
(e.g., ``Tue May 26'')
\e an ASCII escape character (033)
\h the host name up to the first ``.''
\H the host name
\n new line
\r carriage return
\s the name of the shell, the base name of $0
(the portion following the final slash)
\t the current time in 24-hour HH:MM:SS format
\T the current time in 12-hour HH:MM:SS format
\@ the current time in 12-hour AM/PM format
\u the user name of the current user
\v the version of Bash (e.g., 2.00)
\V the release of Bash, version + patch level
(e.g., 2.00.0)
\w the current working directory
\W the base name of the current working directory
\! the history number of this command
\# the command number of this command
\$ if the effective UID is 0, a #; otherwise, a $
\nnn the character corresponding to the octal
number nnn
\\ a backslash
\[ begin a sequence of non-printing characters,
which could be used to embed a terminal control
sequence into the prompt
\] end a sequence of non-printing characters