Per approfondire la risposta di Joshua Briefman, eseguendo reset -c
ripristinerà solo i caratteri di controllo responsabili del tuo problema:
tset
,reset
- inizializzazione del terminale
Usage: tset [options] [terminal]
Options:
-c set control characters
-e ch erase character
-I no initialization strings
-i ch interrupt character
-k ch kill character
-m mapping map identifier to type
-Q do not output control key settings
-r display term on stderr
-s output TERM set command
-V print curses-version
-w set window-size
Si noti inoltre quanto segue dal manuale del comando:
Nota, potresti dover digitare
<LF>reset<LF>
(il carattere di avanzamento riga è normalmente control-J) per far funzionare il terminale, poiché il ritorno a capo potrebbe non funzionare più nello stato anomalo. Inoltre, il terminale spesso non ripeterà il comando.
Esegui il comando reset
e il tuo terminale dovrebbe essere ripristinato (riferimento).
Questo problema si verifica generalmente quando si scaricano dati binari nel terminale STDOUT
che quando vengono elaborati i codici di escape ricevuti può fare qualsiasi cosa, cambiare il colore del testo, disabilitare l'eco, persino cambiare il set di caratteri.
Il modo semplice per evitarlo è assicurarti di non scaricare dati binari sconosciuti sul terminale e, se devi, convertirli in esadecimali per assicurarti che non modifichi le impostazioni del terminale.