Prompt Bash avançado

Estarei neste artigo aprofundando um pouco mais nas funcionalidades que o Bash Prompt pode nos oferecer.

[ Hits: 80.433 ]

Por: Eduardo Vieira Mendes em 23/02/2007


Aparência do prompt



A aparência do prompt é controlada pela variável PS1. Continuações de comando são indicadas pela variável PS2. Existem ainda as variáveis PS3 e PS4, mas vamos restringir as modificações à variável PS1, que é a que realmente nos interessa para as modificações propostas no artigo.

Se quiser saber mais sobre as variáveis PS2, PS3 e PS4, veja a man page do bash com o comando:

$ man bash

Antes de iniciarmos é bom que se faça um backup da sua variável PS1, pois as modificações a seguir serão efetuadas imediatamente. Então caso você não goste da modificação que foi feita, poderá retornar o formato anterior sem que se tenha que fechar e abrir novamente o terminal (Xterm) ou reiniciar o computador (console).

Para isso apenas vamos criar uma variável de ambiente com o valor da variável PS1 com o comando:

$ PS1BKP=$PS1

Assim, sempre que precisar voltar à variável PS1 anterior basta usar o comando:

$ PS1=$PS1BKP

Para setarmos a variável PS1 devemos digitar no terminal o seguinte comando:

PS1=parâmetros

Onde "parâmetros" são as informações que queremos ter no nosso prompt.

Um simples prompt terá a aparência a seguir, com um simples caractere:

[[email protected]]$ PS1=$
$ls
bin   mail
$

Para demonstrar o melhor jeito e experimentando com os parâmetros básicos, veja que logo após você digitar o comando para mudar a variável e teclar enter, o prompt é automaticamente atualizado.

$PS1="$ "
$ ls
bin   mail
$

Veja que apenas adicionamos um espaço em branco ao final da variável para que fique mais legível o comando que estamos digitando.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Aparência do prompt
   3. Seqüência de caracteres de escape do Bash
   4. Caracteres não imprimíveis, aliases e funções
   5. Comandos externos
   6. Utilizando comandos externos no prompt
   7. Colorindo o terminal
Outros artigos deste autor

Bluefish - um poderoso editor para web designers

Utilizando o Protheus em estações Linux

Permissões e propriedades de arquivos

Utilizando o alien para a conversão de pacotes

Transforme seu Linux num Neo Geo

Leitura recomendada

Songbird - Conheçam o media-player da Mozilla

Metisse + Gnome + Slackware (3D Desktop)

Experimento: Transformando openSUSE 12.3 Tumbleweed em 13.2 Factory Milestone 0

Automação e Sensoreamento Remoto utilizando Software Livre "SCADA"

Instalando o Debian em uma máquina virtual (VirtualBox)

  
Comentários
[1] Comentário enviado por albertguedes em 23/02/2007 - 10:01h

Gosto muito quando alguém faz um artigo detalhando o uso de uma coisa que é tão essencial quanto o bash. Isto não só esclaresse para quem tá começando (ou começando no avançado se preferir) como também reaviva a memória. E só para acrescentar no ponto dos caracteres não imprimiveis, não usem os caracteres que não sejam alfanuméricos como colchetes e cifrão e etc para nomear arquivos, e muito menos espaço em branco, sempre usem underlines, "_", em vez de espaços em brancos e uma barra invertida, "\" , antes de caracteres não alfanuméricos se forem insistir em usá-los, mas não aconselho.
De resto, valeu pelo artigo Eduardo, parabens. : )

[2] Comentário enviado por heckjp em 23/02/2007 - 10:41h

parabens pelo artigo, alem de 1 reativação da memoria de quem ja conhece o bash, 1 otimo tutorial para quem é iniciante e nao conhece os poderes dessa ferramenta tao essencial aos usuarios linux...Parabens pelo artigo

[3] Comentário enviado por juninho (RH.com) em 23/02/2007 - 10:50h

Um artigo sobre o Bash, é sempre muito importante, principalmente um comentário com uma qualidade como este.

Parabéns!!!

[4] Comentário enviado por Century_Child em 23/02/2007 - 15:48h

Na mosca, era o que eu estava precisando.

Otimo artigo! Valeu! :)

[5] Comentário enviado por tenchi em 23/02/2007 - 22:08h

Acresentando ao artigo, aqui vão os outros prompts do bash:
PS2: é o segundo prompt do bash, que aparece, por exemplo, quando não conseguimos escrever algo em uma linha, e usamos o caractere de quebra (\), como em:
$ echo um\
> dois\
> três
$
PS3 : é o prompt do comando select. Normalmente '#? '.
PS4 : é o prompt que aparece quando estamos depurando um script. Normalmente é um sinal de mais (+). Para isso, execute:
$ bash -vc script.sh

Ah, e muito bom o set artigo.

[6] Comentário enviado por alexnuvix em 24/02/2007 - 00:30h

Gostei muito bom o artigo ,
Acho que os amigos ja o falaram o quanto o artigo ficou BOM.

Vlw

[7] Comentário enviado por tatototino em 24/02/2007 - 11:51h

Pensei que você iria abordar sobre teclas de atalho no bash como os atalhos ctrl+u e ctrl+l , mas mesmo assim o artigo está legal, principalmente para as pessoas que prentende usar os BSD's e o Solaris que no terminal costumam vir como padrão só com o caracter "#" ou "$".
Parabéns

[8] Comentário enviado por vodooo em 05/03/2007 - 08:30h

Olá galera.

Gostaria de agradecer a todos pelos elógios e pelas dicas adicionais!

Abração a todos e: VIVA O LINUX

[9] Comentário enviado por xerxeslins em 12/02/2008 - 15:26h

Olá,

Artigo excelente!
Estou fuçando artigos que falam de bash para poder tirar minha duvida.

quando eu abro um terminal que eu instalei, aparece assim: "bash-3.1#" mas se eu abrir o gnome-terminal aparece assim "[email protected]:"

como eu faço pra aparecer desse jeito ao invés de "bash-3.1#"?

minhas configurações estão em /etc/profile

Valeu

[10] Comentário enviado por ramontcruz em 30/03/2009 - 21:17h

Excelente!!
valeu muito ler seu artigo!
Brigadão!

[11] Comentário enviado por igor_rocha em 05/08/2012 - 00:40h


[9] Comentário enviado por xerxeslins em 12/02/2008 - 15:26h:

Olá,

Artigo excelente!
Estou fuçando artigos que falam de bash para poder tirar minha duvida.

quando eu abro um terminal que eu instalei, aparece assim: "bash-3.1#" mas se eu abrir o gnome-terminal aparece assim "[email protected]:"

como eu faço pra aparecer desse jeito ao invés de "bash-3.1#"?

minhas configurações estão em /etc/profile

Valeu



Amigo, Leia sobre a parte referente a variável PS1! deste belissimo artigo... :)

Abraço


Contribuir com comentário