Apenas para expandir a resposta de Oli (e para que eu tenha um marcador para esses símbolos abreviados):
O prompt do bash ( stefano@linux:~$
) é apenas o primeiro de alguns prompts que você pode ver:
PS1 : o prompt padrão que você vê quando abre um shell
Seu valor é armazenado em uma variável de ambiente chamada PS1
. Para ver seu valor, digite
echo $PS1
Isso lhe dará algo como
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$
Para alterá-lo, você pode definir um novo valor para a variável:
export PS1="\u > "
Isso resultará em um prompt como este:
stefano >
PS2 : é o seu prompt secundário. Isso é mostrado quando um comando não é concluído. Digite echo "asd
e pressione Enter, o prompt secundário permitirá que você insira mais linhas até fechar as vírgulas invertidas.
PS3 é o prompt usado para select
(2)
PS4 é o prompt usado para rastreamentos de pilha (padrão +
:)
Para tornar as alterações permanentes, você as anexa ao final de .bash_profile
(ou .bashrc
veja esta pergunta ) em seu diretório pessoal.
Aqui está uma lista mais ou menos completa de atalhos que você pode usar ao compor estes:
\a
O caractere 'sino'
\A
Horário 24h
\d
Data (por exemplo, terça-feira, 21 de dezembro)
\e
O personagem 'escape'
\h
Nome do host (até o primeiro ".")
\H
nome de anfitrião
\j
Nº de trabalhos atualmente em execução (ps)
\l
Tty atual
\n
Alimentação de linha
\t
Tempo (hh: mm: ss)
\T
Hora (hh: mm: ss, formato de 12h)
\r
Retorno de carro
\s
Shell (ou seja, bash, zsh, ksh ..)
\u
Nome de usuário
\v
Versão Bash
\V
Cadeia completa de liberação do Bash
\w
Diretório de trabalho atual
\W
Última parte do diretório de trabalho atual
\!
Índice atual no histórico
\#
Índice de comando
\$
Um "#" se você é root, senão "$"
\\
Barra invertida literal
\@
Hora (formato de 12h com am / pm)
Obviamente, você pode inserir qualquer string literal e qualquer comando:
export PS1="\u \$(pwd) > "
Onde $(pwd)
fica no lugar de "a saída de" pwd.
- Se a substituição do comando for escapada, como em
\$(pwd)
, ela é avaliada toda vez que o prompt é exibido, caso contrário, como em $(pwd)
, é avaliada apenas uma vez quando o bash é iniciado.
Se você deseja que o seu prompt contenha cores, use os códigos de cores do bash para fazer isso. O código consiste em três partes:
40;33;01
Cada parte pode ser omitida, assumindo o início à esquerda. ie "1" significa negrito, "1; 31" significa negrito e vermelho. E você faria com que seu terminal imprima em cores escapando da instrução \33[
e finalizando-o com um m
. 33 ou 1B em hexadecimal, é o sinal ASCII "ESCAPE" (um caractere especial no conjunto de caracteres ASCII). Exemplo:
"\33[1;31mHello World\33[m"
Imprime "Hello World" em vermelho brilhante.
export PS1="\n___"