Save me from gibberish terminal

12

2

While logged in to a remote ssh session, sometimes I do cat to the wrong file (a binary or a diretory) and the display converts to gibberish. The only way out is to close the terminal and open a new one, which frustrates me because usually there is a lot of state related to the current terminal already.

Update: while I received great answers, a little problem persists. See this follow-up question.

What can I do?

enter image description here

flybywire

Posted 2009-07-20T09:17:20.467

Reputation: 3 732

As it happens in the title thread, I suggest you to correct the word "gibberish". I can not edit your post to correct only one character, as you know. – Sopalajo de Arrierez – 2014-02-11T20:49:35.013

Answers

22

/usr/bin/reset might also do the trick.

Bombe

Posted 2009-07-20T09:17:20.467

Reputation: 339

see this: http://superuser.com/questions/13158/usr-bin-reset-disables-backspace

– flybywire – 2009-07-26T13:23:39.963

4

Try "Reset" or "Reset and clear" from the the "Terminal" menu in the screenshot.

agnul

Posted 2009-07-20T09:17:20.467

Reputation: 575

Won’t work in a different terminal application or the console. – None – 2009-07-20T09:34:00.493

3

An old trick that works on almost any other Unix type system, too:

echo "^V^O"

That is: Type the word echo than a double quote character then press CTRL and type the kev v then press CTRL and type the key o (the letter not zero) then type another double quote character then press RETURN.

Paidhi

Posted 2009-07-20T09:17:20.467

Reputation: 331

1

Try entering setterm -reset

finnw

Posted 2009-07-20T09:17:20.467

Reputation: 131

1

use reset, manpage: http://www.penguin-soft.com/penguin/man/1/reset.html

cating a textfile works too if i remember correctly

Ledhund

Posted 2009-07-20T09:17:20.467

Reputation: 111

5cating a text file will almost certainly not work – None – 2009-07-20T09:34:39.993

1

Usual commands for these situations:

  • stty sane
  • eval $(tset -s) # or eval tset -s
  • echo ^[c # You will need to type ^v ESC to get ^[ in bash command line

Hope this helps

njsf

Posted 2009-07-20T09:17:20.467

Reputation: 239

1

If you start using a practice of

less filename

instead of

cat filename

You would not land into such state often (ever?).

nik

Posted 2009-07-20T09:17:20.467

Reputation: 50 788

0

when running screen in your ssh session helps as well, as that one will disable the more uncommon font switching escape sequences (but will of course still work with normal programs). The main reasons for screen are different, usually (switching between programs, disconnecting and getting back to your original programs when reconnecting, etc.)

running reset (or one of the escape combos) works if you ever happen to run into a garbled screen (or a screen that refuses to echo input) again...

mihi

Posted 2009-07-20T09:17:20.467

Reputation: 3 217

In gnome-terminal, less doesn't kill mouse scrolling - it just scrolls the text in less, not the scrollback. – user1686 – 2009-07-26T14:28:34.287

Hmm, I just installed gnome-terminal (2.22.3 from Debian Lenny) and I cannot scroll less with the mouse; the scrollbar is just grayed out as with screen. Just as with every other terminal emulator available. as soon as less or screen is closed, the scrollbar gets active again. – mihi – 2009-07-26T20:57:34.917

1The problem with running screen is that you lose useful stuff from the terminal like mouse scrolling. – therefromhere – 2009-07-22T10:15:22.683

1IBTD. Yes, mouse scrolling won't work, but you get working keyboard scrolling and keyboard copy&paste that does not have problems with "dialog borders". Other programs (like "less") kill mouse scrolling, too. – mihi – 2009-07-22T17:27:55.907