Linux Foundation
Commands Used to Start, Exit, Read, and Write Files in vi
Command |
Usage |
vi myfile |
Start the vi editor and edit the m yfile file |
vi -r myfile |
Start vi and edit m yfile in recovery mode from a system crash |
:r file2<ret> |
Read in file2 and insert at current position |
:w<ret> |
Write to the file |
:w myfile<ret> |
Write out the file to m yfile |
:w! file2<ret> |
Overwrite file2 |
:x<ret> or :wq<ret> |
Exit vi and write out modified file |
:q<ret> |
Quit vi |
:q!<ret> |
Quit vi even though modifications have not been saved |
Keystrokes Used When Changing Cursor Position in vi
Keys |
Usage |
arrow keys |
To move up, down, left and right |
j or <ret> |
To move one line down |
k |
To move one line up |
h or Backspace |
To move one character left |
l or Space |
To move one character right |
0 |
To move to beginning of line |
$ |
To move to end of line |
w |
To move to beginning of next word |
h |
To move to top of file |
b |
To move back to beginning of preceding word |
:0 <ret> or (G |
To move to beginning of file |
:n <ret> or nG |
To move to line n |
:$ <ret> or G |
To move to last line in file |
CTRL-F or Page Down |
To move forward one page |
CTRL-B or Page Up |
To move backward one page |
Al |
To refresh and center screen |
Searching for Text in vi
Command |
Usage |
/pattern<ret> |
Search forward for pattern |
string<ret> |
Search backward for pattern |
|
Key |
Usage |
n |
|
Move to next occurrence of search pattern |
N |
|
Move to previous occurrence of search pattern |
Working with Text in vi
Key |
Usage |
a |
Append text after cursor; stop upon Escape key |
A |
Append text at end of current line; stop upon Escape key |
i |
Insert text before cursor; stop upon Escape key |
I |
Insert text at beginning of current line; stop upon Escape key |
o |
Start a new line below current line, insert text there; stop upon Escape key |
0 |
Start a new line above current line, insert text there; stop upon Escape key |
r |
Replace character at current position |
R |
Replace text starting with current position; stop upon Escape key |
x |
Delete character at current position |
Nx |
Delete N characters, starting at current position |
dw |
Delete the word at the current position |
D |
Delete the rest of the current line |
dd |
Delete the current line |
Ndd or dNd |
Delete N lines |
u |
Undo the previous operation |
yy |
Yank (cut) the current line and put it in buffer |
Nyy or yNy |
Yank (cut) N lines and put it in buffer |
P |
Paste at the current position the yanked line or lines from the buffer |