Você pode usar o ssh LocalCommand para emitir a sequência de escape ANSI para alterar a cor do plano de fundo e ter uma seção por host (ou padrão de host) para selecionar a cor apropriada que deseja corresponder ao host remoto.
Se seus servidores de produção seguem uma convenção de nomenclatura como "começa com prod", você pode tentar o seguinte trecho no seu arquivo ~ / .ssh / config:
Host prod*
PermitLocalCommand yes
LocalCommand printf "\x1b[41m\x1b[2JPRODUCTION SYSTEM [%n]\n\n"
Se não houver uma convenção de nomenclatura útil para usar padrões curinga, basta listar os nomes de host separados por espaços. Você pode criar blocos Host adicionais com diferentes valores de cores e cadeias de caracteres para vários outros servidores que não são de produção.
Após conectar-se a um host que corresponde ao padrão, a impressão correspondente será executada localmente, alterando a cor de fundo para vermelho (a [41m escolhe vermelho como cor de fundo, a parte [2J repintará a tela inteira com a cor de fundo atualizada. Consulte https://en.wikipedia.org/wiki/ANSI_escape_code para muito mais opções)
O maior incômodo sobre essa abordagem é que a cor do plano de fundo persiste na saída da sessão ssh; Não há contrapartida no LocalCommand para ser executada na desconexão (que eu saiba). Um alias ou script de invólucro de shell para ssh pode chamar printf "\x1b[0m"
como uma redefinição. Por outro lado, definir a cor de plano de fundo via LocalCommand significa que você obterá a cor definida, mesmo que o ssh não seja executado por meio de um script ou alias de wrapper.
ls
aliasls --color=auto
e inclui a sequência de redefinição '<ESC> [0m'. Para persistir, você provavelmente precisaria configurar diferentes perfis do terminal gnome e seguir a rota de script do wrapper, selecionando um nome de perfil com base no nome do host e invocandognome-terminal --profile=$PROFILE_NAME -e ssh $HOST &
ls --colour
OU a sequência de redefinição no PS1, qualquer uma delas substituirá as configurações de cores ansi anteriores. Então, analisarei a implementação da sua solução de script de wrapper proposta, o que também é uma excelente idéia! Merci beaucoup!