Shell-freezing Ctrl-S and other keyboard shortcuts

For a while now I’ve known about the rather annoying Linux shell freezing that happens when you press Ctrl-S. At first, it seems like a connection drop-out if it’s remote (I use the Linux shell a lot, via PuTTY on Windows), but it took me a few months to realise that it was when I pressed a key. A few months later, I learnt it was caused by Ctrl-S, when I meant to press Ctrl-D (EOF).

Apparently, this is intended behaviour – a scroll lock of sorts. Ctrl-S again doesn’t solve it, but Ctrl-Q will.

So, here’s a few other keyboard shortcuts you may or may not find useful – not all of these may work on every unix/linux variant.

Ctrl-A Moves the cursor to the beginning of the line. See Ctrl-E.
Ctrl-B Moves the cursor backward one character. See Ctrl-F.
Ctrl-C SIGINT – interrupts (cancels)
Ctrl-D EOF – end of file character, marks the end of user input. If used on an interactive shell, will log you out. If used on a STDIN stream, will mark the end of the stream so it stops expecting input from you.(These are essentially different angles on the same thing)
Ctrl-E Moves the cursor to the end of the line. See Ctrl-A.
Ctrl-F Moves the cursor forward one character. See Ctrl-B.
Ctrl-H Backspace
Ctrl-L Clears the screen (like the clear command)
Ctrl-N Next item in history. See Ctrl-P
Ctrl-P Previous item in history. See Ctrl-N
Ctrl-Q XON – Resumes screen output. See Ctrl-S.
Ctrl-R Reverse history search.
Ctrl-S XOFF – Suspends screen output. See Ctrl-Q.
Ctrl-U Delete line
Ctrl-W Delete last word
Ctrl-Z SIGTSTP – suspend a process. Can be resumed with either fg or bg

Thanks to http://www.computerhope.com/ushort.htm and http://www.cdrinfo.com/Sections/Reviews/Specific.aspx?ArticleId=19672 for some of the info here.