How To

How Do You Make the Bash Prompt Change Colors When Logged Into a Server?

  • Do not set the PS1 if it is not set already (which means that, if the shell is not interactive). Just testing to see if the PS1 is “non-empty” is a common way to find out if the shell is interactive or not and we don’t want to confuse programs that do that (that means a more accurate test is checking to see if $- contains i).
  • If you want this code to run when you are logging into a remote server, you should have one of these profile files always source ~/.bashrc (Here I am assuming you already know that).
  • In PS1, the escape codes must be enclosed with in […].
  • [033[m resets the foreground and background to their default values, so here:w appears in the terminal background/foreground.
  • [033[48;5;XXXm33[38;5;YYYm sets background/foreground to XXX/YYY.
  • For a script that dumps the available colors, try colortest.
  • To check and see what the Bash Prompt would look like, use the: echo -e “<33[48;5;16m33[38;5;196mhost33[m:dir>$ “
To Top

Pin It on Pinterest

Share This