Chcete-li mít prompt v konzoli odlišený kromě znaků $ a # i barevně, přidejte si na konec souboru /etc/profile
následující kód
function prompt {
local BLACK="\[\e[0;30m\]"
local BLACKBOLD="\[\e[1;30m\]"
local RED="\[\e[0;31m\]"
local REDBOLD="\[\e[1;31m\]"
local GREEN="\[\e[0;32m\]"
local GREENBOLD="\[\e[1;32m\]"
local YELLOW="\[\e[0;33m\]"
local YELLOWBOLD="\[\e[1;33m\]"
local BLUE="\[\e[0;34m\]"
local BLUEBOLD="\[\e[1;34m\]"
local PURPLE="\[\e[0;35m\]"
local PURPLEBOLD="\[\e[1;35m\]"
local CYAN="\[\e[0;36m\]"
local CYANBOLD="\[\e[1;36m\]"
local WHITE="\[\e[0;37m\]"
local WHITEBOLD="\[\e[1;37m\]"
if [[ $EUID -eq "0" ]]; then
export PS1="\n$BLACKBOLD[\A]$REDBOLD \u@\h\[\e[00m\]:$BLUEBOLD\w\[\e[00m\] \\$ "
else
export PS1="\n$BLACKBOLD[\A]$GREENBOLD \u@\h\[\e[00m\]:$BLUEBOLD\w\[\e[00m\] \\$ "
fi
}
prompt
a aktualizujte pomocí
. /etc/profile
případně
source /etc/profile
Fíglem pro barevný prompt je fakt, že každá barva má svoji escape sekvenci ve tvaru \[\e[X;Ym\]
, kde X je buď 0 (standardní tloušťka písma), nebo 1 (tučné písmo) a Y je dvouciferné číselné označení barvy.
Používat můžeme i více barev najednou. V takovém případě lze na jinou barvu “přepnout” uvedením kódu příslušné barvy. “Resetování” na standardní barvu shellu se provádí sekvencí \[\e[00m\]
.
Podrobně o barvičkách v promptu pojednává stránka https://wiki.archlinux.org/index.php/Color_Bash_Prompt#Step_by_step.