Uma maneira de fazer isso é usar o recurso LocalCommand
de ssh
. Com esse método, uma seqüência de escape para alterar o título do terminal será impressa após uma conexão bem-sucedida com um host remoto.
Edite ou crie ~/.ssh/config
para incluir algo como:
Host *
PermitLocalCommand yes
LocalCommand printf '3]0;%%sprintf '3]0;%slssh () {
/path/to/ssh "$@"
printf '3]0;%sHost *
PermitLocalCommand yes
LocalCommand printf '3]0;%%sprintf '3]0;%slssh () {
/path/to/ssh "$@"
printf '3]0;%s%pre%7' "$(uname -n)"
}
7' "$(uname -n)"
7' '%h'
7' "$(uname -n)"
}
7' "$(uname -n)"
7' '%h'
A desvantagem desse método é que o título permanece alterado após o logout do servidor remoto. Você pode contornar isso com:
%pre%Se você quiser automatizar isso, você pode usar uma função:
%pre%Esta resposta assume que o emulador de terminal usa as mesmas seqüências de escape do XTerm. Se este não for o caso, você deve verificar a documentação do seu emulador de terminal específico.
Uma ressalva no caso da tela GNU é que uma única janela de terminal pode conter várias janelas virtuais. Nesse caso, você poderia usar uma seqüência de escape diferente ( 3k%s3\
) para definir o título interno de uma única janela virtual.