In this article, I am going to share a list of Linux vi commands.
Linux vi commands list :
Typically we have 8 types of vi commands, those are listed below.
- Cursor Movement Commands
- Scrolling Commands
- Delete Commands
- Yanking Commands
- Paste Commands
- Insert Mode Commands
- Colon Commands and
- Special Commands
Lets see each one in detail:
Vi Cursor Movement Commands :
Command | Action |
---|---|
h | Used to move the cursor one character left |
j | Used to move the cursor one character down |
k | Used to move the cursor one character up |
l | Used to move the cursor towards right direction |
w | Used to move the cursor to next line of first character |
2w | Used to move the cursor 2 words forward |
nw | Used to move the cursor "n" words forward |
b | Used to move the cursor to previous word. |
nb | Used to move the cursor to "n" previous words. |
e | Used to move the cursor to next word last character. |
$ | Used to move the cursor to end of the current line |
^ | Used to move the cursor to starting of the current line |
ngg | Used to move the cursor to starting line of the file. |
gg | Used to move the cursor to first line. |
G | Used to move the cursor to last line of the file. |
M | Used to move the cursor to middle line of the file |
Vi Scrolling Commands :
Command | Action |
---|---|
Ctrl+f | Used to scroll the page forward |
Ctrl+b | Used to scroll the page backward |
Ctrl+d | Used to scroll half page forward |
Ctrl+u | Used to scroll half page backword |
Delete Commands :
Command | Action |
---|---|
dd | Used to delete current line |
ndd | Used to delete n lines from current position |
x | Used to delete the character at present cursor position |
X | Used to delete previous character of the present current position |
dw | Used to delete a word |
db | Used to delete previous word |
ndb | Used to delete "n" previous words |
d$ | Used to delete characters from current cursor position to end of the line |
d^ | Used to delete characters from current cursor position to starting of the line |
Yanking Commands :
Command | Action |
---|---|
Y | Used to yank a single character. |
Y^ | Used to yank present cursor position to starting of the line |
Y$ | Used to yank present cursor position to ending of the line |
yy | Used to yank the current line |
nyy | Used to yank the n lines from current position |
ngg | Used to yank from current position to first position |
YG | Used to yank present cursor position to last position |
yw | Used to yank a word |
yb | Used to yank previous word |
nyb | Used to yank "n" previous words |
Paste Commands :
Command | Action |
---|---|
p | Used to paste below the cursor position |
P | Used to paste above the cursor position |
InsertMode Commands :
Command | Action |
---|---|
A | Used to append the text at the end of line |
a | Used to append the text after cursor position |
i | Used to append a letter before the cursor position |
I | Used to append a letter to beginning of line |
o | Open a new line below the present line |
O | Open a new line above the present line |
s | Delete the present cursor position |
Colon Commands :
Command | Action |
---|---|
:w | Used to save file |
:q | Used to Quit from file without saving |
:wq | Used to Quit from file with saving (Save + Quit) |
Special Commands :
Command | Action |
---|---|
U | Used to undo the previous action. |
T | Used to join the lines |
. | Used to redo the previous action |
~ | Used to change the case of present character.(Upper to Lower and vice-versa) |
Happy Learning 🙂