Existem várias maneiras de verificar se o usuário é root (para definir o PS1):
- o nome do usuário, usando
$USER
,$(whoami)
(a saída de$(whoami)
. N.B, o superusuário pode ser chamado de outra coisa, mas geralmente é chamado deroot
. - o ID do usuário, usando
$EUID
ou$UID
(consulte aqui para obter algumas informações). UID 0 é sempre o superusuário.
Então, por exemplo, você pode substituir a linha PS1+="\[ - \u \]"
por:
if [ $EUID -eq 0 ]; then
PS1+="\[ - ${red}\u \]";
else
PS1+="\[ - \u \]";
fi
Você também pode definir outra variável personalizada na linha:
PS1+="\[ - \u ${usercolor}\]"
E use uma instrução condicional antes se assim mudar a cor:
if [ $EUID -eq 0 ]; then
usercolor="\e[1;31m";
fi