| C-b |
Move back one character. |
| C-f |
Move forward one character. |
| DEL or Backspace |
Delete the character to the left of the cursor. |
| C-d |
Delete the character underneath the cursor. |
| Printing characters |
Insert the character into the line at the cursor. |
| C-_ or C-x C-u |
Undo the last editing command. You can undo all the way back to an empty line. |
| C-a |
Move to the start of the line. |
| C-e |
Move to the end of the line. |
| M-f |
Move forward a word, where a word is composed of letters and digits. |
| M-b |
Move backward a word. |
| C-l |
Clear the screen, reprinting the current line at the top. |
| C-k |
Kill the text from the current cursor position to the end of the line. |
| M-d |
Kill from the cursor to the end of the current word, or, if between words, to the end of the next word. |
| M-DEL |
Kill from the cursor the start of the current word, or, if between words, to the start of the previous word. |
| C-w |
Kill from the cursor to the previous whitespace. This is different than M-DEL because the word boundaries differ. |
| C-y |
Yank the most recently killed text back into the buffer at the cursor.
FYI,Yanking means to copy the most-recently-killed text from the kill buffer. |
| M-y |
Rotate the kill-ring, and yank the new top. You can only do this if the prior command is C-y or M-y. |
| C-r |
To search backward in the history for a particular string |
| C-s |
To search forward in the history for a particular string |
| previous-history (C-p) |
Move `back' through the history list, fetching the previous command. |
| next-history (C-n) |
Move `forward' through the history list, fetching the next command. |
| beginning-of-history (M-<) |
Move to the first line in the history. |
| end-of-history (M->) |
Move to the end of the input history, i.e., the line currently being entered. |
| reverse-search-history (C-r) |
Search backward starting at the current line and moving `up' through the history as necessary. This is an incremental search. |
| forward-search-history (C-s) |
Search forward starting at the current line and moving `down' through the the history as necessary. This is an incremental search. |
| non-incremental-reverse-search-history (M-p) |
Search backward starting at the current line and moving `up' through the history as necessary using a non-incremental search for a string supplied by the user. |
| non-incremental-forward-search-history (M-n) |
Search forward starting at the current line and moving `down' through the the history as necessary using a non-incremental search for a string supplied by the user. |
| yank-nth-arg (M-C-y) |
Insert the first argument to the previous command (usually the second word on the previous line) at point. With an argument n, insert the nth word from the previous command (the words in the previous command begin with word 0). A negative argument inserts the nth word from the end of the previous command. |
| yank-last-arg (M-. or M-_) |
Insert last argument to the previous command (the last word of the previous history entry). With an argument, behave exactly like yank-nth-arg. Successive calls to yank-last-arg move back through the history list, inserting the last argument of each line in turn. |
| upcase-word (M-u) |
Uppercase the current (or following) word. With a negative argument, uppercase the previous word, but do not move the cursor. |
| downcase-word (M-l) |
Lowercase the current (or following) word. With a negative argument, lowercase the previous word, but do not move the cursor. |
| capitalize-word (M-c) |
Capitalize the current (or following) word. With a negative argument, capitalize the previous word, but do not move the cursor. |
| complete (TAB) |
Attempt to perform completion on the text before point. The actual completion performed is application-specific. Bash attempts completion treating the text as a variable (if the text begins with `$'), username (if the text begins with `~'), hostname (if the text begins with `@'), or command (including aliases and functions) in turn. If none of these produces a match, filename completion is attempted. |
| possible-completions (M-?) |
List the possible completions of the text before point. |
| insert-completions (M-*) |
Insert all completions of the text before point that would have been generated by possible-completions. |
| complete-filename (M-/) |
Attempt filename completion on the text before point. |
| possible-filename-completions (C-x /) |
List the possible completions of the text before point, treating it as a filename. |
| complete-username (M-~) |
Attempt completion on the text before point, treating it as a username. |
| possible-username-completions (C-x ~) |
List the possible completions of the text before point, treating it as a username. |
| complete-variable (M-$) |
Attempt completion on the text before point, treating it as a shell variable. |
| possible-variable-completions (C-x $) |
List the possible completions of the text before point, treating it as a shell variable. |
| complete-command (M-!) |
Attempt completion on the text before point, treating it as a hostname. |