Em um bash do CentOS (ou, se houver uma maneira geral em outros bashes, como o Ubuntu, melhor), como posso diferenciar os comandos digitados por mim com a saída dos comandos?
Pergunto isso porque quando uso um comando que sai muito na tela, fica difícil saber onde começa. Eu quero, por exemplo, decorar meus comandos com uma cor brilhante e a saída com uma cor mais escura, ou recuar a saída em 4.
Que pode ser como:
[root@westerngun ~]# ps aux | grep myname <- brighter
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx <- darker
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Ou:
[root@westerngun ~]# ps aux | grep myname
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx <- indented by 4
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Para começar,
bash
ébash
, não importa onde esteja sendo executado. A única coisa importante a observar é qual versão.bash
4 tem alguns novos recursos não disponíveis nobash
3, por exemplo.Dito isso, você pode colorir seu prompt com bastante facilidade definindo
PS1
("Prompt String 1") para separar um comando do outro. Por exemplo, quando faço login em uma das minhas máquinas domésticas, vejo isto:Ao rolar pelo histórico do meu terminal, posso simplesmente desligar o texto ciano no meu prompt para saber quando um comando termina e outro começa.
Para referência, o meu
PS1
é o seguinte:Isso mostra meu nome de usuário, nome do host e CWD em uma string que eu poderia copiar e colar em (por exemplo) um
scp
comando, seguido pelo código de saída do comando anterior se não fosse zero.