Existem muitas opções para configurar bash
. Eu uso os seguintes comandos para facilitar o acesso ao histórico de comandos: -
bind '"\e[A": history-search-backward'
bind '"\e[B": history-search-forward'
Estes ajustam as setas Up e Down para examinar o histórico de comandos para os comandos que começam com os caracteres antes do cursor na linha de comando (como o TCC faz no Windows).
Quanto ao prompt, você pode colocar comandos para serem executados toda vez que o prompt for gerado. Eu uso: -
PS1="\'curspos -n>/dev/tty\'\'[ \$BASH_LEVEL != 1 ]&&echo \"[\$BASH_LEVEL]\"\'\t[\w/]\\$ "
Isso chama dois comandos em cada prompt: -
-
curspos
é um script que escrevi para verificar a posição do cursor e gerar uma nova linha, se não estiver na primeira coluna (fiquei irritado com linhas em branco desnecessárias). - As verificações
BASH_LEVEL
precedem o prompt com o nível entre colchetes, se não for 1, portanto fica imediatamente óbvio se você estiver em um shell filho (por exemplo,[2]15:55:32[~/]$
).
Nenhuma delas responde diretamente às suas necessidades, mas elas ilustram o poder que você pode usar na string de prompt. No seu caso, você pode simplesmente preceder um script ou função (como gitcheck
) para executar antes do resto do seu prompt, e isso pode gerar qualquer informação que você queira ver no formato que você quer como parte do prompt.
Eu finalmente comentaria que fish
está disponível em muitas distribuições Linux (por exemplo, no repositório do Ubuntu), então você precisa fazer estas bash
customizações apenas se você for impedido de instalar pacotes.