Comment empêcher l'effacement de la sortie du terminal lorsque je «quitte» une session SSH?

23

C'est la situation: j'ouvre un terminal dans Ubuntu, et le fais ssh host-1, qui fonctionne comme prévu. À partir de l'hôte-1, je le fais ssh host-2, ce qui fonctionne à nouveau correctement et me connecte à l'hôte-2. À partir de l'hôte-2, je fais, par exemple echo "blah", qui imprime blahà l'écran. Problème: si je le fais exit, l'écran est effacé et il ne me reste que les éléments suivants:

Connection to host-2 closed.
myusername$

Comment puis-je empêcher l'effacement de la sortie de l'écran généré par les commandes exécutées sur l'hôte-2 (c'est-à-dire blah, etc.), après être exitrevenu à l'hôte-1?

J'ai déjà fait un débogage: j'ai un ami qui se connecte à host-1 et host-2, exactement comme ci-dessus, et quand il exitest de host-2, son écran n'est PAS effacé. Donc ça doit être quelque chose à voir avec mon environnement ... non? Des idées ce que cela pourrait être?

J'ai essayé cela en utilisant PuTTY dans Windows XP et à partir d'un terminal dans Ubuntu - même comportement malgré tout.

Mureinik
la source

Réponses:

25

Vérifier ~/.bash_logout

Il contient probablement une clearcommande. Commentez cela.

En outre, dans de nombreux terminaux, (par exemple gnometerm), vous pouvez simplement faire défiler vers le haut et voir ce qui a été "effacé".

DavidPostill
la source
Oui, c'était dans ~ / .bash_logout. Merci :)
2

Vous avez déclaré Ubuntu, mais pour le bien des autres, s'il s'agit d'un cygwin récemment mis à jour, modifiez /etc/bash.bash_logoutet commentez ce qui suit:

if [ "$SHLVL" = 1 ]; then
    [ -x /usr/bin/clear ] && /usr/bin/clear
fi

Les mises à jour futures n'écraseront pas le fichier s'il est modifié.

Stuart Rothrock
la source