Alterando o prompt do modo texto:

2007/08/24

É possível alterar as informações disponíveis no prompt, ao invés de usar [user@host dir]$. Para isso, existem vários parâmetros que podem ser passados para o sistema na variável PS1. Os arquivos que devemos alterar são:

/etc/profile => Configurações globais
~/.profile
~/.bash_profile => Os dois para configurações locais


Veja qual é o default da maioria dos sistemas utilizando bash:

PS1="[\u@\h \W]\$"

Agora, entendendo o que quer dizer cada "letrinha" dessas apresentadas anteriormente:

\u => Exibe o usuário no momento;
\h => Exibe o host da máquina;
\W => Exibe o último diretório que você está no momento (se estiver no /home/copag, será apresentado apenas copag);
\$ => Se você for usuário comum, será apresentado o símbolo $, em caso do superusuário (root), será #.

Bom, existem muitos outros, não é simples guardar, mesmo porquê não utilizamos isso com freqüência. Porém, veja-os a seguir:

\d => Exibe a data no formato "Dia-Semana Mês Dia-Mês";
\t => Exibe a hora no formato "HH:MM:SS";
\n => "Pula" para a linha de baixo;
\w => Exibe o diretório atual no formato completo;
\s => Exibe o nome do shell (no caso do bash);
\# => Exibe um contador de comandos, ou seja, incrementa a cada comando feito;
\! => Exibe o número do comando no `history', incluindo o ~/.bash_history;
\\ => Exibe uma barra ( \ ).

Agora, veja como utilizar ANSI, com cores e deixar o prompt mais bonito... Para inserir as cores utilizando ANSI, utilize:

\033[FFm\033[LLm Comandos-Apresentados-Acima \033[0m

Explicando:

\033[ => Iniciando string com caracteres ANSI;
FFm => FF = Cor de fundo, deve-se utilizar o "m" no final;
\033[ => Iniciando novamente caracteres ANSI;
LLm => LL = Cor da letra, utilizando-se também o "m" no final;
\033[ => Mais uma string de carateres ANSI;
0m => O número 0 desliga as cores anteriores (bom para evitar conflitos!).

Obs.: "Comandos-Apresentados-Acima" são comandos para alteração de prompt.

Veja o tão esperado exemplo:

PS1="\033[41m\033[32m\u@\h:\w\$ \033[0m"

Explicando:

PS1 => Variável responsável pela alteração do prompt;
\033[ => Iniciando string ANSI;
41m => Cor de fundo: 41 corresponde a fundo vermelho;
\033[ => Iniciando nova string ANSI;
32m => Cor de letra: 32 corresponde a verde;
\u => Usuário corrente;
@ => Exibe (adiciona) o caracter "@" na linha de prompt;
\h => Mostra o host local;
: => Exibe (adiciona) o caracter ":" na linha de prompt;
\w => Exibe o caminho completo do diretório atual;
$ => Exibe $ (usuário comum) ou # (superusuário - root);
\033[ => Iniciando última string ANSI;
0m => Anula as cores ao digitar um comando (como já dito, recomendável!).

Bom, não é tão complicado quanto parece, reserve alguns minutos para entender o que você está fazendo.

O exemplo acima, adicionado ao meu ~/.bash_profile exibirá, em minha máquina:

copag@linuxbq:~$

Isso no diretório /home/copag.
Se eu estiver no diretório /home/copag/LinuxBQ, seria apresentado:

copag@linuxbq:~/LinuxBQ$

É claro que seria apresentado com fundo vermelho e letras verdes. Use a sua imaginação para criar o seu, você pode!

Veja agora a lista completa de cores:

CC => Define a cor de fundo:
40 => Preto
41 => Vermelho
42 => Verde
43 => Amarelo
44 => Azul
45 => Rosa
46 => Azul claro
47 => Branco

FF => Define a cor da letra:
30 => Preta
31 => Vermelha
32 => Verde
33 => Amarela
34 => Azul
35 => Rosa
36 => Azul claro
37 => Branca

X => Opções especiais:
0 => Desliga a cor anterior
1 => Negrito
2 => Escuro
4 => Sublinhado (para monitores mono)
5 => Piscando (Blink)
7 => Reverso

Outros exemplos:

PS1="[\u@\t \s:\w]$ "

Exibiria:

[copag@07:32:50 bash:~]$

PS1="\s@\d \W$ "

Exibiria:

bash@Sat Jun 15 copag$

PS1="\033[47m\033[5m\033[34m\u@\s \#:\w\$ \033[0m"

Exibiria:

copag@bash 1:~$

Isto seria exibido em fundo branco, letras azuis e piscando (blink). 1 é a quantidade de comandos (varia de máquina para máquina, é lógico!).

fonte: oficinadanet.com
Compare Preços De: Artigos Esportivos, Natação/Hidroginástica Celular, Gsm, Radio Amador

0 comentários: