How to change the prompt in Linux?
This is changed by changing the environment variable PS1
.
You can see the current value of PS1
by:
root@monu dev# echo $PS1
You can see the value to be equal to \u@\h \w\$
, where:
\u
: username\h
: hostname\w
: current working directory\$
: a#
symbol for the root user, a$
symbol for other users
If you want the change to be permanent, you have to add the script changing the value of PS1
in ~/.bashrc
, since that it gets executed every time a user logs in.
This depends on your shell. As an important side note, you should never use the root account as a personal account. Create a normal user and set up access to sudo. Please check your distribution manual as to how to do this.
In zsh, you need to set the PROMPT variable like so:
PROMPT='%{ESC[38;5;24m%};%{ESC[0m%} '
zshell offers a lot of other options and this is really a minimal prompt.
In bash, you can set it this way:
local ROOK="\[\033[38;5;24m\]"
local DEFAULT="\[\033[0;39m\]"
PS1="${ROOK}\$${DEFAULT} "
Note that in both cases, I have a 256 colour enabled terminal. The man page will help a lot (man bash
or man zsh
).