Como personalizar o prompt de comando?

1

Estou disposto a alterar meu prompt de comando para algo como

user$

em que user não é root e

root#

Quando o usuário atual é root . Eu procurei por isso e descobri que isso é conseguido através do caractere $ especial e agora eu tenho algo parecido com isso no meu ~ / .bashrc

PS1="\u$ "

Infelizmente, o $ não é exibido como # quando o usuário atual é root . Por exemplo, depois de executar

user$ sudo bash

Eu recebo meu prompt de comando

root$

Em vez de

root#

Estou sentindo falta de algo?

    
por Kareem 16.02.2015 / 19:46

1 resposta

2

Adicione a seguinte linha no seu ~/.bashrc

if [ "$(whoami)" = "root" ]; then PS1="\u# "; else PS1="\u$ "; fi

quando você abre um novo terminal, você receberá,

user$
user$ sudo bash
root#

Nota: funcionará apenas com sudo bash . Como sudo -i ou sudo su verificará /root/.bashrc em vez do usuário .bashrc . Para obter o mesmo comportamento, copie o mesmo em /root/.bashrc também.

Melhor maneira alternativa:

A mesma coisa pode ser alcançada configurando PS1 como

PS1="\u\$ "          

no usuário e também no root .bashrc

    
por souravc 16.02.2015 / 20:06