Here is a list of Commands that are frequently used in UNIX programming:
h move cursor one character to left
j move cursor one line down
k move cursor one line up
l move cursor one character to right
w move cursor one word to right
b move cursor one word to left
0 move cursor to beginning of line
$ move cursor to end of line
nG move cursor to line n
control-f scroll forward one screen
control-b scroll backward one screen
i insert to left of current cursor position (end with ESC)
a append to right of current cursor position (end with ESC)
dw delete current word (end with ESC)
cw change current word (end with ESC)
r change current character
˜ change case (upper-, lower-) of current character
dd delete current line
D delete portion of current line to right of the cursor
x delete current character
ma mark currrent position
d‘a delete everything from the marked position to here
‘a go back to the marked position
p dump out at current place your last deletion (‘‘paste’’)
u undo the last command
. repeat the last command
J combine (‘‘join’’) next line with this one
:w write file to disk, stay in vi
:q! quit VI, do not write file to disk,
ZZ write file to disk, quit vi
:r filename read in a copy of the specified file to the current buffer
/string search forward for string (end with Enter)
?string search backward for string (end with Enter)
n repeat the last search (‘‘next search’’)
:s/s1/s2 replace (‘‘substitute’’) (the first) s1 in this line by s2
:lr/s/s1/s2/g replace all instances of s1 in the line range lr by s2