Como mudar o prompt de bash
- 2125
- 582
- Robert Wunsch DVM
O "prompt de bash" na interface da linha de comando é aquele pouco de texto que precede seus comandos. Geralmente é o nome de usuário seguido pelo nome do host na maioria dos sistemas, para que a sintaxe possa parecer algo como usuário@linuxconfig $
por exemplo. Basta dizer que a linha de comando BASH padrão prompt em muitos sistemas Linux é bastante mínima.
Como veremos neste artigo, ele pode ser facilmente alterado modificando a festa Ps n
variáveis, e podemos incluir informações como tempo de exibição, carga, número de usuários usando o sistema, tempo de atividade e muito mais. Neste tutorial, você verá como enfeitar seu prompt de bash com cores e informações adicionais em um sistema Linux.
Neste tutorial, você aprenderá:
- O que são variáveis de shell PS1 e PS2
- Como criar prompts de shell personalizados
- Quais são os personagens que podemos usar para personalizar um prompt de shell
Categoria | Requisitos, convenções ou versão de software usada |
---|---|
Sistema | Qualquer distro Linux |
Programas | Bash Shell |
Outro | Conhecimento mínimo da casca de festa. Acesso privilegiado ao seu sistema Linux como raiz ou através do sudo comando. |
Convenções | # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de sudo comando$ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular |
Bash Variáveis rápidas
Assim como tudo o mais em um sistema Linux, o mesmo pode ser personalizado também pode ser personalizado. Podemos realizar a tarefa alterando os valores de Bash
Ps1
, Ps2
, Ps3
, e Ps4
variáveis. Para manter as coisas simples, este artigo estará preocupado apenas com os dois primeiros. Use o eco
comando para ver seus valores atuais: $ echo "variável Bash PS1:" $ ps1 $ echo "Bash PS2 Variável:" $ ps2Proms
Variável de prompt do Bash PS1
Ps1
é a principal variável de prompt. O nosso é atualmente:
\ [\ e] 0; \ u@\ h: \ w \ a \] $ debian_chroot:+($ debian_chroot) \ [\ 033 [01; 32m \] \ u@\ h \ [\ 033 [00M \]: \ [\ 033 [01; 34m \] \ w \ [\ 033 [00m \] \ $
Isso parece um pouco confuso, porque muito disso costumava definir as cores que você vê na captura de tela acima. O ponto de partida aqui é o uso dos personagens especiais da festa \você
(do utilizador), \ h
(nome do host) e \c
(Diretório de trabalho atual). Esses tipos de caracteres são o que nos permite exibir informações personalizadas que mudarão com as circunstâncias no prompt de bash. Mais deles serão cobertos abaixo.
Variável de prompt de Bash PS2
Ps2
variável de shell bash é o aviso secundário e geralmente é definido como >
. Este prompt é exibido se o shell aguardar alguma entrada do usuário, por exemplo, se você estiver usando aspas e esqueça de fechá -las.
$ echo "texto com citações ausentes>Diagrama de prompt linux bash
BASH PROMPRO DE PROMPENTOS ESPECIAIS
O prompt de bash pode ser personalizado usando caracteres especiais. Aqui está uma rápida visão geral dos personagens mais usados e seu significado:
Bash personagem especial | Explicação de personagens especiais do Bash | Bash personagem especial | Explicação de personagens especiais do Bash |
---|---|---|---|
\a | um personagem ASCII Bell (07) | \ d | a data do formato "Data do mês da semana" (e.g., "Ter 26 de maio") |
\] | encerrar uma sequência de caracteres não impressos | \ e | Um personagem ASCII Escape (033) |
\ h | o nome do host até o primeiro '.' | \ H | o nome do host |
\ j | o número de empregos atualmente gerenciados pelo shell | \eu | O nome da base do nome do dispositivo de terminal da concha |
\ n | nova linha | \ r | Retorno do carro |
\ s | o nome do shell, o nome da base de US $ 0 (a parte seguindo o final golpear) | \ t | O horário atual em HH de 24 horas: MM: formato SS |
\ T | O horário atual em 12 horas HH: MM: formato SS | \@ | O horário atual em formato AM/PM de 12 horas |
\A | O horário atual em formato HH: mm de 24 horas | \você | o nome de usuário do usuário atual |
\ v | a versão do Bash (e.g., 2.00) | \ V | O lançamento de Bash, versão + patchelvel (e.g., 2.00.0) |
\c | o diretório de trabalho atual | \C | o nome da base do diretório de trabalho atual |
\! | o número da história deste comando | \# | o número de comando deste comando |
\ $ | Se o UID efetivo for 0, um #, caso contrário, um $ | \ nnn | o personagem correspondente ao número octal nnn |
\\ | uma barra de barriga | \ [[ | iniciar uma sequência de caracteres não impressos, que podem ser usados para incorporar um Sequência de controle de terminal no prompt |
\ D formato | O formato é passado para o strftime (3) e o resultado é inserido na string prompt; Um formato vazio resulta em um tempo específico para localidade representação. Os aparelhos são necessários |
Bash Personalização pronta
Depois que um usuário faz login no sistema, as variáveis do ambiente do usuário são inicializadas a partir de vários arquivos:
/etc/perfil
ou/etc/Bashrc
(No âmbito do sistema)~/.Bash_profile
,~/.Bash_login
,~/.perfil
,~/.Bashrc
ou~/.Bash_logout
(específico do usuário)
É importante saber que todas as variáveis do ambiente do usuário têm um tempo de vida igual à sessão do terminal. Quando a sessão do terminal é fechada, as variáveis do usuário, incluindo variáveis de shell bash definidas durante uma sessão do terminal, são esvaziadas e redefinidas quando uma nova sessão de terminal é criada.
Nas seções abaixo, definiremos duas variáveis para provar esta afirmação.
Personalizando as instruções variáveis de variável BASH
Vamos agora editar o ~/.Bashrc
arquivo de configuração para exibir um prompt de bash personalizado. Como mencionado acima, precisaremos fazer o logout de nossa sessão atual do terminal e fazer o login para perceber as mudanças que entram em vigor ou apenas usarem o fonte
comando como mostrado abaixo.
- Use Nano ou algum outro editor de texto para editar o
~/.Bashrc
arquivo. Alternativamente, nós podemoseco
as novas configurações de prompt do shell no arquivo.$ echo "ps1 = 'meu novo Bash Prompt@\\ t: \\ w \\ $'" >> ~////////////////////.Bashrc
- Fazer as alterações entrarem em vigor com o seguinte
fonte
comando.$ fonte ~//.Bashrc
- Agora você deve ver o novo prompt:
Meu novo prompt de bash@16: 42: 58: ~ $
Prompt de basquete personalizado no Linux
Alterar as cores prontamente em primeiro plano e fundo
Veja a tabela abaixo para obter várias cores usadas para alterar o Bash Shell Prompt e primeiro plano:
Cor | Número de primeiro plano | Número de segundo plano |
---|---|---|
Preto | 30 | 40 |
Vermelho | 31 | 41 |
Verde | 32 | 42 |
Marrom | 33 | 43 |
Azul | 34 | 44 |
Roxo | 35 | 45 |
Ciano | 36 | 46 |
Cinza claro | 37 | 47 |
Para alterar a cor do seu prompt de bash, a seguinte sintaxe é usada:
exportação ps1 = '\ [\ e [CÓDIGO DE CORESm \] [Exemplo] \ [\ e [0m \] $ '
\ e [
= Marca o início de um mod de corColm
= O número de cores desejado, seguido dem
\ e [0m
= Marca o fim de um mod de cor
Alguns exemplos, usando esta sintaxe, podem ser vistos abaixo.
Bash Exemplos de prontuários
- Um prompt de bash vermelho:
exportar ps1 = "\ e [31m [exemplo] \ e [0m $"
- Um prompt roxo de bash:
exportar ps1 = "\ e [35m [exemplo] \ e [0m $"
Vários exemplos de prontuoso bash no Linux. Adapte -se conforme necessário para atender às suas necessidades - Exiba a hora atual no prompt de bash:
exportar ps1 = "\ u@\ h \ t: \ $"
- Este prompt de bash exibe o número atual de arquivos e diretórios no diretório atual.
exportar ps1 = "\ u@\ h [\ $ (ls | wc -l)]: \ $"
Pensamentos finais
Neste tutorial, vimos como alterar o prompt de bash na interface da linha de comando em um sistema Linux. Isso não apenas pode fazer com que nosso terminal de linha de comando pareça muito melhor, mas também podemos usar os personagens especiais de Bash para exibir muitas informações úteis. Sinta -se à vontade para adaptar alguns de nossos exemplos às suas próprias necessidades, para que você possa obter uma boa aparência, com algumas informações úteis ao mesmo tempo.
Tutoriais do Linux relacionados:
- Como usar o comando de tempo de uptime no Linux
- Com que frequência você tem que reiniciar seu servidor Linux?
- Coisas para instalar no Ubuntu 20.04
- Uma introdução à automação, ferramentas e técnicas do Linux
- Mastering Bash Script Loops
- Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
- Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
- Sistema Linux Hung? Como escapar para a linha de comando e…
- Comandos básicos do Linux
- Como alterar o nome do host no Linux
- « Introdução a funções de ordem superior em JavaScript
- Introdução à API do eBay com Python obtendo chaves e acessando a caixa de areia - Parte 1 »