Command Line Keyboard Shortcuts for Mac OS X
The command line in Mac OS X can be a very powerful and fun tool, so it’s good to know how to maneuver around if you find yourself in it. By default, the Mac OS X Terminal uses the Bash shell, which is what these keyboard shortcuts are intended for. So if you’re ready to get your feet wet, open up the Terminal and try these shortcuts out, they’re sure to make your command line life easier. The list isn’t too crazy so you should be able to try all these out within a minute or two, have fun:
| Ctrl + A | Go to the beginning of the line you are currently typing on |
| Ctrl + E | Go to the end of the line you are currently typing on |
| Ctrl + L | Clears the Screen, similar to the clear command |
| Ctrl + U | Clears the line before the cursor position. If you are at the end of the line, clears the entire line. |
| Ctrl + H | Same as backspace |
| Ctrl + R | Let’s you search through previously used commands |
| Ctrl + C | Kill whatever you are running |
| Ctrl + D | Exit the current shell |
| Ctrl + Z | Puts whatever you are running into a suspended background process. fg restores it. |
| Ctrl + W | Delete the word before the cursor |
| Ctrl + K | Clear the line after the cursor |
| Ctrl + T | Swap the last two characters before the cursor |
| Esc + T | Swap the last two words before the cursor |

Are you kidding me – I’ve been using Bash for 5 freaking years and I never knew any of this. Thanks!
Very nice – thanks alot for this list
Love the list, watch out for spammers!
Aaweosmeom!!!
Cool — I love the Ctrl + L thing as a substitute for clear — because now I can clear the screen, arrow-up for history of my last commands — without having to skip the clear command itself. Sounds trivial, but that was annoying me! Thanks!
For those who find this site, you can set the behavior of bash by using:
set -o vi
for vi command editing mode. It defaults in emacs mode (the keybindings above).
vi mode starts in editing mode, but pressing esc and you’re back into the glorious world of vi.
if you want to retain ctrl+L clear screen behavior in vi mode, try adding this to your .bashrc (or equivalent) file:
bind -m vi-insert “\C-l”:clear-screen
(thanks to http://www.jukie.net/~bart/blog/20040326082602)
Is there any way to change the binding to the delete previous word? I find ctrl-w a difficult reach, and I prefer the apple-backspace.
Thanks!
[...] Visto en OSXDaily [...]
Is there any key to delete the word after the cursor, like CTRL + W before the cursor?
Is there any key to delete the word after the cursor, like CTRL + W before the cursor?
[...] Command Line Keyboard Shortcuts for Mac OS X – OS X Dailyosxdaily.com [...]
[...] The Conversation – Now That I Have Your Attention Top 10 YouTube Videos for Social Good Command Line Keyboard Shortcuts for Mac OS X – OS X Daily Best Science Visualization Videos of 2009 Wired Science Wired.c Screenr: Simple Screencasting for [...]
A useful tip to see all keyboard shortcuts is:
%> bind -P
so to delete the word after the curso, use esc-d ( \ed )
$ bind -P | grep not -v
abort can be found on “\C-g”, “\C-x\C-g”, “\e\C-g”.
accept-line can be found on “\C-j”, “\C-m”.
backward-char can be found on “\C-b”, “\eOD”, “\e[D”.
backward-delete-char can be found on “\C-h”, “\C-?”.
backward-kill-line can be found on “\C-x\C-?”.
backward-kill-word can be found on “\e\C-h”, “\e\C-?”.
backward-word can be found on “\e[1;5D”, “\e[5D”, “\eb”.
beginning-of-history can be found on “\e”, “\e[6~”.
end-of-line can be found on “\C-e”, “\eOF”, “\e[4~”, “\e[8~”, “\e[F”.
exchange-point-and-mark can be found on “\C-x\C-x”.
forward-char can be found on “\C-f”, “\eOC”, “\e[C”.
forward-search-history can be found on “\C-s”.
forward-word can be found on “\e[1;5C”, “\e[5C”, “\ef”.
glob-complete-word can be found on “\eg”.
glob-expand-word can be found on “\C-x*”.
glob-list-expansions can be found on “\C-xg”.
history-expand-line can be found on “\e^”.
insert-comment can be found on “\e#”.
insert-completions can be found on “\e*”.
insert-last-argument can be found on “\e.”, “\e_”.
kill-line can be found on “\C-k”.
kill-word can be found on “\ed”.
next-history can be found on “\C-n”, “\eOB”, “\e[B”.
non-incremental-forward-search-history can be found on “\en”.
non-incremental-reverse-search-history can be found on “\ep”.
operate-and-get-next can be found on “\C-o”.
possible-command-completions can be found on “\C-x!”.
possible-completions can be found on “\e=”, “\e?”.
possible-filename-completions can be found on “\C-x/”.
possible-hostname-completions can be found on “\C-x@”.
possible-username-completions can be found on “\C-x~”.
possible-variable-completions can be found on “\C-x$”.
previous-history can be found on “\C-p”, “\eOA”, “\e[A”.
quoted-insert can be found on “\C-q”, “\C-v”, “\e[2~”.
re-read-init-file can be found on “\C-x\C-r”.
reverse-search-history can be found on “\C-r”.
revert-line can be found on “\e\C-r”, “\er”.
self-insert can be found on ” “, “!”, “\”", “#”, “$”, …
set-mark can be found on “\C-@”, “\e “.
shell-expand-line can be found on “\e\C-e”.
start-kbd-macro can be found on “\C-x(“.
tilde-expand can be found on “\e&”.
transpose-chars can be found on “\C-t”.
transpose-words can be found on “\et”.
undo can be found on “\C-x\C-u”, “\C-_”.
unix-line-discard can be found on “\C-u”.
unix-word-rubout can be found on “\C-w”.
upcase-word can be found on “\eu”.
yank can be found on “\C-y”.
yank-last-arg can be found on “\e.”, “\e_”.
yank-nth-arg can be found on “\e\C-y”.
yank-pop can be found on “\ey”.
hey! how to delete (clear) the whole line? not after or before the cursor. but the whole
nice one frens
[...] Keyboard Shortcuts in Terminal [...]
This website is the perfect web site.
ctrl + arrow keys for fast navigation in text