Restaurar o título do Mac OS X Terminal após fechar uma conexão SSH [duplicado]


18

Possível duplicata:
Como faço para o OS X definir o título do terminal de volta ao título original ao voltar do ssh?

Toda vez que você efetua logout de uma conexão SSH no terminal Mac OS X, as informações de login anteriores são exibidas no título da janela.

A maioria das soluções que encontrei pesquisando na Web envolve brincar com sequências de fuga, como esta pergunta ou esta postagem de blog relacionada .

Parece ser um problema SSH, não um terminal, então eu queria saber se existe uma maneira mais fácil de fazer isso (talvez editando a configuração do cliente SSH?).

Respostas:


26

Não é um problema SSH. O problema é que o shell no host remoto está configurado para enviar uma sequência de escape para definir o título da janela do terminal. Esta é uma configuração bastante comum. As soluções mencionadas na postagem do blog ao qual você vinculou estão corretas.

A solução mais simples e direta é configurar o mesmo shell remoto para redefinir o título da janela quando ele sair. por exemplo, se o shell remoto for bash, coloque isso em ~ / .bash_logout:

printf '\e]0;\a'

Como alternativa, se você deseja que seu shell local atualize o título da janela com algo útil, faça o mesmo. Quando a conexão ssh terminar, o shell local definirá o título da janela para outra coisa, em vez de deixar o valor obsoleto. por exemplo, coloque isso em ~ / .bashrc:

PS1='\[\e]1;\s\$ \W\a\e]2;\u@\h\a\]'"$PS1"

Isso coloca o nome do usuário e do host no título da janela (que é tipicamente o que os shells remotos estão configurados para fazer) e também define o título da guia para mostrar o nome e o tipo do shell (usuário ou raiz normal) e o diretório de trabalho atual.

Observe que, se você ainda não possui um ~ / .bash_profile (ou ~ / .profile), crie um e execute ~ / .bashrc para que ~ / .bashrc se aplique aos shells de login e não-login:

if [ -f $HOME/.bashrc ]; then
    . $HOME/.bashrc
fi
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.