Salvage a borked terminal

If you bork your terminal by sending binary data to STDOUT or similar, you can get your terminal back using this command rather than killing and restarting the session. Note that you often won't be able to see the characters as you type them.
Sample Output
␍▒┴␋␍@␊▒⎼├␤:? $ 
␍▒┴␋␍@␊▒⎼├␤:? $ 
␍▒┴␋␍@␊▒⎼├␤:? $ 
␍▒┴␋␍@␊▒⎼├␤:? $ ⎼␊⎽␊├
david@earth:~ $

By: root
2009-01-28 22:22:01

9 Alternatives + Submit Alt

What Others Think

Nice to know. I normally always reset it by typing "cat /bin/ls" (you can use any binary file you want) and hitting ^C while it's still cat'ting.
LudoA · 663 weeks and 6 days ago
Use "cat -v" instead of "cat" to cat binary files without borking the terminal.
int19h · 662 weeks and 2 days ago
interesting enough, +enter will fix this as well, no need for external commands.
SiegeX · 662 weeks and 1 day ago
stupid tag parsing. Lets try this again: interesting enough ctrl+v,ctrl+o then hitting enter will fix this as well, no need for external commands.
SiegeX · 662 weeks and 1 day ago
reset doesn't always work for me if the terminal is borked, is this a bug or am I doing something wrong? Anyone else encountered reset not resetting the terminal?
int19h · 662 weeks and 1 day ago
in alternative, this is what I use:
berta · 662 weeks and 1 day ago
@int19h: Yeah, reset doesn't always work.
mulad · 662 weeks ago
This is what the 'file' command is for. If you don't know the file type you're about to echo to the terminal, run 'file' on it before hand, then use the right tool to parse its data. If you do, and reset doesn't work, ^Jreset^j might. ^j (ctrl-j) is the ASCII key sequence for the Enter key.
atoponce · 660 weeks and 3 days ago
Interesting, I always use "stty sane" CTRL-J
mpb · 658 weeks and 1 day ago
'reset' goes with tset and the System V-style termio. stty sane does much the same thing but is portable to the older style terminal driver.
CharlieInCO · 637 weeks and 6 days ago
I simply have the solution SiegeX presented as part of my system prompt so I never get borked. Using Vi in binary mode I edited my .bashrc and inserted the control character into the PS1 variable so that PS1="\u@\h^O" (^O produced with ctrl+v,ctrl+o) No more borked terminals.
john6of6 · 629 weeks and 1 day ago
I think this is an informative post .
broomhaylie · 64 weeks and 1 day ago
cleaning services lubbock Good article, but it would be better if in future you can share more about this subject. Keep posting
yeoyeo · 49 weeks and 5 days ago
great site! glad i found this. any recent updates? hair extensions salon near me
looneyhans · 36 weeks ago
seo what is seo search engine optimization
seofox · 5 weeks and 2 days ago

What do you think?

Any thoughts on this command? Does it work on your machine? Can you do the same thing with only 14 characters?

You must be signed in to comment.

What's this? is the place to record those command-line gems that you return to again and again. That way others can gain from your CLI wisdom and you from theirs too. All commands can be commented on, discussed and voted up or down.

Share Your Commands

Stay in the loop…

Follow the Tweets.

Every new command is wrapped in a tweet and posted to Twitter. Following the stream is a great way of staying abreast of the latest commands. For the more discerning, there are Twitter accounts for commands that get a minimum of 3 and 10 votes - that way only the great commands get tweeted.


Subscribe to the feeds.

Use your favourite RSS aggregator to stay in touch with the latest commands. There are feeds mirroring the 3 Twitter streams as well as for virtually every other subset (users, tags, functions,…):

Subscribe to the feed for: