6.2.2. Basic commands
6.2.2.1. Moving through the text
Moving through the text is usually possible with the arrow keys. If not, try:
h to move the cursor to the left
l to move it to the right
k to move up
j to move down
SHIFT-G will put the prompt at the end of the document.
6.2.2.2. Basic operations
n dd will delete n lines starting from the current cursor position.
n dw will delete n words at the right side of the cursor.
x will delete the character on which the cursor is positioned
:n moves to line n of the file.
:w will save (write) the file
:q will exit the editor.
:q! forces the exit when you want to quit a file containing unsaved changes.
:wq will save and exit
:w newfile will save the text to newfile .
:wq! overrides read-only permission (if you have the permission to override permissions, for instance when you are using the root account.
/astring will search the string in the file and position the cursor on the first match below its position.
/ will perform the same search again, moving the cursor to the next match.
:1, $s/word/anotherword/g will replace word with anotherword throughout the file.
yy will copy a block of text.
n p will paste it n times.
:recover will recover a file after an unexpected interruption.
6.2.2.3. Commands that switch the editor to insert mode
a will append: it moves the cursor one position to the right before switching to insert mode
i will insert
o will insert a blank line under the current cursor position and move the cursor to that line.
Pressing the Esc key switches back to command mode. If you're not sure what mode you're in because you use a really old version of vi that doesn't display an "INSERT" message, type Esc and you'll be sure to return to command mode. It is possible that the system gives a little alert when you are already in command mode when hitting Esc , by beeping or giving a visual bell (a flash on the screen). This is normal behavior.
* License

