Eu tenho 5 máquinas nas quais eu constantemente ssh para fazer o trabalho. Está ficando cada vez mais frustrante quando estou emitindo comandos errados nas caixas erradas. Felizmente ainda não fiz nada de ruim. Eu queria saber se existe algum hack que eu possa codificar, que exibirá meu prompt em cores diferentes, com base na máquina em que estou usando o ssh? Como azul para desktop1, roxo para laptop, vermelho para servidor etc? Isso é possível?
Atualmente, estou usando este comando export PS1 = "\ e [0; 31m [\ u @ \ h \ W] \ $ \ e [m" retirado daqui http://www.cyberciti.biz/faq/bash-shell -change-the-color-of-my-shell-prompt-under-linux-ou-unix / mas obviamente não funciona no ssh.
Além disso, se você tiver outras dicas legais do bash para me ajudar a facilitar minha visão, será maravilhoso. Eu recebi essa dica que colore as páginas de manual.
http://linuxtidbits.wordpress.com/2009/03/23/less-colors-for-man-pages/
fonte
name
@ **server
** antes de cada comando não transmite em que servidor você está? Leva algum tempo para se acostumar, mas é a melhor maneira existenteRespostas:
O método que eu uso é gerar uma cor para o nome do host a partir do nome do host. Não há muitas cores para escolher, portanto isso gerará conflitos facilmente, mas é útil para a pequena quantidade de máquinas que eu gerencio.
A primeira linha gera um número entre 30 (inc) e 36 (exc) a partir do nome do host da máquina. A segunda linha o aplica ao prompt com nome de usuário e caminho em verde (32) e o nome do host na cor gerada.
Nenhuma cor de plano de fundo está definida e excluo ciano (36) e branco (37) do primeiro plano para evitar conflitos com o plano de fundo dos terminais que eu uso.
fonte
Você está no caminho certo. Usei o método detalhado na página para a qual você vincula e detalhou exatamente como no meu blog . Funciona para mim usando o PuTTY de uma caixa do Windows e também o SSH de um servidor CentOS para outro. Se não estiver funcionando para você e você tiver certeza de que a sintaxe está correta, pode ser por causa do seu cliente SSH.
fonte
No meu trabalho, temos diferentes estágios de servidores
desenvolvimento de produção
Eu uso um prompt vermelho como prod e verde para a preparação. Agora, todas as máquinas de teste têm stg no domínio.
Então prod seria
Estadiamento / Dev seria
Isso realmente funcionará apenas para redhat / centos
Mas para servidores prod, tenho o seguinte em
Dentro é
Isso tornará o prompt vermelho. Agora você não pode tocar em / etc / bashrc e todas as outras máquinas que não são de prod permanecerão com a cor normal de primeiro plano usada .. mas eu as deixei verdes
Que se o bloco deveria estar lá .. Acabei de mudar a cor da outra parte para ser verde .. 33 é verde
fonte
Você pode alterar o bash.rc em cada máquina para fornecer cores de prompt diferentes. Ou, se você tiver privilégios suficientes, altere a configuração do sshd para permitir a transferência do ambiente do usuário por meio da
PermitUserEnvironment
diretiva.fonte
Estamos trabalhando em uma solução mais abrangente baseada em soma de verificação de string de nome de host nesta lista essencial . 256 compatibilidade de cores. Além do caso em que você está realmente interessado em determinar uma cor específica para cada um dos seus servidores, sinto que esse é um daqueles "é o que temos computadores" para problemas, para obter cores "aleatórias" determinadas para você com base em as somas de verificação devem ser uma boa abordagem.
fonte