Existe uma variável no terminal que se chama PS1, ela é a configuração de como o seu bash deve "ser". Se você digitar o comando 'set' você vai achar essa variável.
$ set | grep PS1
PS1='\u@\h:\w \$ '
Então, se você modificar a variável PS1, a forma com que seu bash aparece vai mudar! Tente digitar o comando:
$ PS1='[\u] \$ '
[user] $
Eureka!
Mais nós não queremos ficar digitando isso toda vez que logarmos no Linux. Então, vamos colocar isso no arquivo de configuração dos terminais (login shells). Eu uso Slackware, então esse arquivo é o /etc/profile, em outras distros, ele pode variar para ~/.bash_profile ou ~/.bashrc.
Nesse arquivo, /etc/profile, existe uma parte dele assim:
# Set a default shell prompt:
# PS1='`hostname`:`pwd`# '
if [ "$SHELL" = "/bin/pdksh" ]; then
PS1='! $ '
elif [ "$SHELL" = "/bin/ksh" ]; then
PS1='! ${PWD/#$HOME/~}$ '
elif [ "$SHELL" = "/bin/zsh" ]; then
PS1='%n@%m:%~%# '
elif [ "$SHELL" = "/bin/ash" ]; then
PS1='$ '
else
PS1='\u@\h:\w \$ '
fi
A penúltima linha é a que nós queremos mudar. Então, se trocarmos o valor dessa variável, todos os logins shells que iniciarmos vão ter essa configuração.
A lista de alguns parâmetros que você pode colocar é a seguinte:
\d - a data no formato "Dia Mês Data" (ex. Tue May 26)
\h - o seu hostname sem o grupo de trabalho
\H - o seu hostname com o grupo de trabalho
\s - o nome do shell
\t - as horas no formato (24-horas) HH:MM:SS
\T - as horas no formato (12-horas) HH:MM:SS
\A - as horas no formato (24-horas) HH:MM
\u - o usuário que está usando o shell
\v - a versão do bash (ex. 3.01)
\V - a versão + patch do bash (ex. 3.01.1)
\w - o caminho completo do diretório atual
\W - apenas o nome do diretório atual
\$ - o simbolo # (caso root) ou $ (outros usuários)
A lista completa pode ser obtida digitando:
$ man bash
Você também pode colocar cores no seu shell. Para adicionar uma cor, digite:
'\e[FUNDO;ATTR;CORm \e[m'
ATTR (atributos da letra):
00 - Nenhum
01 - Negrito
04 - Sublinhado
05 - Piscar
07 - Inversa (Troca cor da letra por cor de fundo da letra e vice-versa)
08 - Oculta
COR (a cor da letra):
30 - Preto
31 - Vermelho
32 - Verde
33 - Amarelo
34 - Azul
35 - Rosa
36 - Azul Claro
37 - Branco
FUNDO (cor de fundo da letra):
40 - Preto
41 - Vermelho
42 - Verde
43 - Amarelo
44 - Azul
45 - Rosa
47 - Azul Claro
48 - Branco
A minha configuração atual do shell é a seguinte:
PS1='\e[01;31m\u\e[m \e[01;34m\W \$ \e[m'
01;31 - Vermelho em negrito
01;34 - Azul em negrito
Observações finais:
Você pode colocar qualquer texto no sua variável PS1:
[6] Comentário enviado por rafael_novello em 10/06/2008 - 09:44h
Meu amigo....
Estou postando novamente apenas para contar que este problema do hostname era a causa de outro problema muito maior. Eu não conseguia acesso gráfico ao servidor SSH da empresa. A autenticação do xauth (Mit Magic Cookies) não acontecia.
[8] Comentário enviado por jhonmuller97 em 19/10/2022 - 16:51h
Olá, quando realizo a configuração de SP1 para ter apenas o nome de usuário e o diretório atual com cores, quando realizo a digitação de comando grandes ele sobrescreve a primeira linha e não pula para a segunda (faz a quebra), somente quando é digitado um comando maior ainda ele faz a quebra. Como posso resolver?
Minha variável SP1 está assim:
PS1='\e[01;32m\u\e[m \e[01;34m\W \$ \e[m'