Come impedire la cancellazione dell'uscita del terminale quando "esco" da una sessione SSH?


23

Questa è la situazione: apro un terminale in Ubuntu e faccio ssh host-1, che funziona come previsto. Dall'host-1, lo faccio ssh host-2, che funziona di nuovo bene e mi collega all'host-2. Dall'host-2 lo faccio, ad esempio echo "blah", che stampa blahsullo schermo. Problema: in tal caso exit, lo schermo viene cancellato e mi rimane solo quanto segue:

Connection to host-2 closed.
myusername$

Come posso impedire la cancellazione dell'output dallo schermo generato dai comandi eseguiti sull'host-2 (ad esempio blah, ecc.), Dopo essere exittornato all'host-1?

Ho già fatto un po 'di debug: ho avuto un amico che accede a host-1 e host-2, esattamente come sopra, e quando viene exitda host-2, il suo schermo NON viene cancellato. Quindi deve essere qualcosa a che fare con il mio ambiente ... giusto? Qualche idea su cosa potrebbe essere?

Ho provato questo usando PuTTY in Windows XP e da un terminale in Ubuntu - lo stesso comportamento a prescindere.

Risposte:


25

Dai un'occhiata ~/.bash_logout

Probabilmente contiene un clearcomando. Commentalo.

Inoltre, in molti terminali (ad es. gnometerm) Puoi semplicemente scorrere indietro e vedere cosa è stato "cancellato".


Sì, era in ~ / .bash_logout. Grazie :)

2

Hai dichiarato Ubuntu, ma per il bene degli altri, se è un cygwin aggiornato di recente, modifica /etc/bash.bash_logoute commenta quanto segue:

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

Gli aggiornamenti futuri non sovrascriveranno il file se viene modificato.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.