Command Editing Shortcuts
- Ctrl + a – go to the start of the command line
- Ctrl + e – go to the end of the command line
- Ctrl + k – delete from cursor to the end of the command line
- Ctrl + u – delete from cursor to the start of the command line
- Ctrl + w – delete from cursor to start of word (i.e. delete backwards one word)
- Ctrl + y – paste word or text that was cut using one of the deletion shortcuts (such as the one above) after the cursor
- Ctrl + xx – move between start of command line and current cursor position (and back again)
- Alt + b – move backward one word (or go to start of word the cursor is currently on)
- Alt + f – move forward one word (or go to end of word the cursor is currently on)
- Alt + d – delete to end of word starting at cursor (whole word if cursor is at the beginning of word)
- Alt + c – capitalize to end of word starting at cursor (whole word if cursor is at the beginning of word)
- Alt + u – make uppercase from cursor to end of word
- Alt + l – make lowercase from cursor to end of word
- Alt + t – swap current word with previous
- Ctrl + f – move forward one character
- Ctrl + b – move backward one character
- Ctrl + d – delete character under the cursor
- Ctrl + h – delete character before the cursor
- Ctrl + t – swap character under cursor with the previous one
Command Recall Shortcuts
- Ctrl + r – search the history backwards
- Ctrl + g – escape from history searching mode
- Ctrl + p – previous command in history (i.e. walk back through the command history)
- Ctrl + n – next command in history (i.e. walk forward through the command history)
- Alt + . – use the last word of the previous command
Command Control Shortcuts
- Ctrl + l – clear the screen
- Ctrl + s – stops the output to the screen (for long running verbose command)
- Ctrl + q – allow output to the screen (if previously stopped using command above)
- Ctrl + c – terminate the command
- Ctrl + z – suspend/stop the command
Bash Bang (!) Commands
Bash also has some handy features that use the ! (bang) to allow you to do some funky stuff with bash commands.
- !! – run last command
- !blah – run the most recent command that starts with ‘blah’ (e.g. !ls)
- !blah:p – print out the command that !blah would run (also adds it as the latest command in the command history)
- !$ – the last word of the previous command (same as Alt + .)
- !$:p – print out the word that !$ would substitute
- !* – the previous command except for the last word (e.g. if you type ‘find some_file.txt /‘, then !* would give you ‘find some_file.txt‘)
- !*:p – print out what !* would substitute
Bash Shortcuts Quick Reference | |
Ctrl-a | Move to the start of the line. |
Ctrl-e | Move to the end of the line. |
Ctrl-b | Move back one character. |
Alt-b | Move back one word. |
Ctrl-f | Move forward one character. |
Alt-f | Move forward one word. |
Ctrl-] x | Where x is any character, moves the cursor forward to the next occurance of x. |
Alt-Ctrl-] x | Where x is any character, moves the cursor backwards to the previous occurance of x. |
Ctrl-u | Delete from the cursor to the beginning of the line. |
Ctrl-k | Delete from the cursor to the end of the line. |
Ctrl-w | Delete from the cursor to the start of the word. |
Esc-Del | Delete previous word (may not work, instead try Esc followed by Backspace) |
Ctrl-y | Pastes text from the clipboard. |
Ctrl-l | Clear the screen leaving the current line at the top of the screen. |
Ctrl-x Ctrl-u | Undo the last changes. Ctrl-_ does the same |
Alt-r | Undo all changes to the line. |
Alt-Ctrl-e | Expand command line. |
Ctrl-r | Incremental reverse search of history. |
Alt-p | Non-incremental reverse search of history. |
!! | Execute last command in history |
!abc | Execute last command in history beginning with abc |
!abc:p | Print last command in history beginning with abc |
!n | Execute nth command in history |
!$ | Last argument of last command |
!^ | First argument of last command |
^abc^xyz | Replace first occurance of abc with xyz in last command and execute it |
reference:
1.http://www.skorks.com/2009/09/bash-shortcuts-for-maximum-productivity/
2.https://www.ice2o.com/bash_quick_ref.html