The default interactive prompt on your Linux can be modified as shown below to something useful and informative. In the following example, the default PS1 was “\s-\v\$”, which displays the shell name and the version number. Let us change this default behavior to display the username, hostname and current working directory name as shown below.
-bash-3.2$ export PS1="\u@\h \w> " ramesh@dev-db ~> cd /etc/mail ramesh@dev-db /etc/mail> [Note: Prompt changed to "username@hostname current-dir>" format]
Following PS1 codes are used in this example:
- \u – Username
- \h – Hostname
- \w – Full pathname of current directory. Please note that when you are in the home directory, this will display only ~ as shown above
Note that there is a space at the end in the value of PS1. Personally, I prefer a space at the end of the prompt for better readability. Make this setting permanent by adding export PS1=”\u@\h \w> ” to either .bash_profile (or) .bashrc as shown below.
ramesh@dev-db ~> vi ~/.bash_profile ramesh@dev-db ~> vi ~/.bashrc [Note: Add export PS1="\u@\h \w> " to one of the above files]
Refer to the next chapter for several practical examples of PS1 usage in detail.