| Keyboard shortcut |
Action |
| Navigation |
| Ctrl-A |
Go to the beginning of the line (note that if you use GNU screen, you can use the Home button to do this, especially considering that Ctrl-A is a special control character in screen). |
| Ctrl-E |
Go to the end of the line (note that if you use GNU screen, you can use the End button to do this). |
| Alt-B (or ESC, left arrow) |
Jump back one word using a non-alphanumeric character as delimiter. |
| Alt-F (or ESC, right arrow) |
Jump forward one word using a non-alphanumeric character as delimiter. |
| Ctrl-PGUP or Shift-PGUP |
This may or may not work, and it works differently on different console apps. It will either scroll up one line at a time, 1 page at a time, or it may not work at all. I’m inclined to think it’s not a bash shortcut at all. |
| Ctrl-PGDN or Shift-PGDN |
Same as the above but scrolling is done in the opposite direction. |
| Up/Down |
Previous/Next command in history. This one is way too obvious but I’m including it for completeness. |
| Ctrl-R |
History search. For example, Ctrl-R svn Ctrl-R Ctrl-R … will cycle through all recently run commands with the ‘svn’ in them. It is one of the most useful shortcuts in bash. |
| Command Line Manipulation |
| Ctrl-W |
Cut one word backwards using white space as delimiter. |
| Alt-BACKSPACE |
Cut one word backwards using a non-alphanumeric character as delimiter (different from Ctrl-W, for example, abc;bcd will cut to abc;). |
| Ctrl-K |
Cut everything forward to end of line. |
| Ctrl-U |
Cut everything backwards to beginning of line. |
| Ctrl-T |
Transpose the current character with the previous one. I almost never use this. Never mind, I never use it, but someone might find it useful. |
| Alt-T |
Transpose the word at cursor with the one before cursor. In other words, swap them around. |
| Ctrl-Y |
Paste whatever was cut by the last cut command. |
| Ctrl-V |
Insert the next character literally. For example, Ctrl-V TAB inserts the actual TAB character. This shortcut is often misunderstood because of mistyping Ctrl-V and not realizing what it does. |
| Ctrl-_ |
Undo the last command. Don’t forget – it’s Ctrl-Shift-MINUS, not Ctrl-MINUS. |
| Alt-R |
Revert all changes to current line. Very useful if you accidentally modify a command in history. |
| Alt-U/Alt-L/Alt-C |
Uppercase/lowercase/capitalize from cursor to end of word and move cursor past end of word. |
| Terminal control |
| Ctrl-L |
Clear screen while keeping whatever is already typed in the command line intact. |
| Ctrl-S |
Suspend currently running terminal. |
| Ctrl-Q |
Unsuspend the terminal suspended by Ctrl-S. You need to be aware of this shortcut because 99% of the time you’ve accidentally pressed Ctrl-S and need to undo its effects. |
| Ctrl-Z |
Suspend the currently running process (usually followed by bg to resume it in the background or fg to resume in the foreground). |
| TAB |
Autocomplete. Start typing, then hit TAB. You will either get a list of possible completion values (2 TABs needed) or the only choice will be filled in (only 1 TAB is needed). This shortcut is quite obvious and well known, so I put it at the bottom of the list. |