vi editor commands

Switch to Text or Insert mode:

    Open line above cursor O        
Insert text at beginning of line I Insert text at cursor i Insert text after cursor a Append text at line end A
    Open line below cursor o        

Switch to Command mode:

Switch to command mode <ESC>

Cursor Movement (command mode):

    Scroll Backward 1 screen <ctrl>b    
    Scroll Up 1/2 screen <ctrl>u    
Go to beginning of line 0 Go to line n nG Go to end of line $
    Scroll Down 1/2 screen <ctrl>d Go to line number ## :##
    Scroll Forward 1 screen <ctrl>f    
    Go to last line G    
Scroll by sentence f/b ( )        
Scroll by word f/b w b Move left, down, up, right h j k l Left 6 chars 6h
    Directional Movement Arrow Keys Go to line #6 6G

Deleting text (command mode):

Change word cw Replace one character r    
Delete word dw Delete text at cursor x Delete entire line (to buffer) dd
    Delete current to end of line D Delete 5 lines (to buffer) 5dd
        Delete lines 5-10 :5,10d

Editing (command mode):

Copy line yy Copy n lines nyy Copy lines 1-2/paste after 3 :1,2t 3
Paste above current line P
     
Paste below current line p     Move lines 4-5/paste after 6 :4,5m 6
        Join previous line J
Search backward for string *?*string Search forward for string */*string Find next string occurrence n
% (entire file) s (search and replace) /old text with new/ c (confirm) g (global - all) :%s/oldstring/newstring/cg     Ignore case during search :set ic
Repeat last command . Undo previous command u Undo all changes to line U

Save and Quit (command mode):

Save changes to buffer :w Save changes and quit vi :wq Save file to new file :w file
    Quit without saving :q! Save lines to new file :10,15w file

Labels

linux linux Delete
vi vi Delete
editor editor Delete
layout layout Delete
key key Delete
unix unix Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.