Bash customizado, parte 1

Alterar o arquivo ~/.bashrc para que o comando ls imprima colorido (azul para diretórios, verde para executáveis, etc) não deve ser novidade para muitas pessoas que já mexam com nixes da vida já por algum tempo.

O que eu vou falar aqui é sobre algo um pouco menos conhecido, a variável PS1, como editá-la e como acrescentar cores a ela. Depois de seguido o mini-HowTo, você terá algo parecido com isso, mas mais ao seu gosto:
Screenshot do Bash

Antes de mais nada, modifique as cores do terminal que você estiver usando para algo mais agradável. As cores padrão normalmente nos remetem ao console virtual (modo texto), e embora contrastem bem tanto com o fundo branco como o fundo preto, elas não são cores muito agradáveis.

Depois de alteradas as cores, vamos alterar a variável PS1, e a PS2, se você quiser. A variável PS1 é uma string com alguns caracteres ‘chave’ que possuem valor especial, mais ou menos como uma string de controle da função printf(). É ela que controla o ‘$’ ou ‘#’ e tudo o que aparece antes deles.

Por padrão no ArchLinux, ela tem essa aparência e esse valor:
[user@host dir] $
PS1='[\u@\h \W] \$’

Experimente novas maneiras de usá-la digitando
PS1=’o que vc quer’
no próprio Bash. Não se preocupe, depois que você sair e entrar de novo no Bash, ela voltará ao normal. Nela você poderá incluir algumas informações como hora, nome de usuário, nome do servidor, etc. A minha ficou assim:
PS1=’\n[\W] \h \$ ‘

Aqui está uma lista com as opções possíveis:

  • \d a data em um formato “Dia da Semana Mês Dia” format (ex: “Tue May 26”)*
  • \e Caractere de escape ASCII (033)
  • \h Nome do servidor até o primiro `.’
  • \H Nome do servidor
  • \n Nova linha
  • \s O nome do shell, a parte que segue a última barra ($0)
  • \t A hora em 24 horas (HH:MM:SS)
  • \T A hora em 12 horas (HH:MM:SS)
  • \@ A hora em 12 horas am/pm
  • \u Nome do usuário
  • \v Versão do Bash (ex: 2.00)
  • \V O release do bash, versão + patchlevel (ex: 2.00.0)
  • \w Diretório atual (ex: /nome/do/diretório)
  • \W Base do nome do diretório (ex: diretório)
  • \! O número do comando no histórico
  • \# O número do comando
  • \$ Se a userID for 0 (root), #, senão, $
  • \nnn Um caractere representando o número octal nnn
  • \\ Uma barra invertida
  • \[ Inicia uma sequência de caracteres não imprimiveis
  • \] Termina a sequência

Esse é o fim da primeira parte. Na próxima veremos como mudar as cores e um script que mostra todas elas.

Publicidade

Uma resposta para “Bash customizado, parte 1

  1. Pingback: Bash customizado, parte 2 « Aletéia

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

%d blogueiros gostam disto: