Contact Premier Online Trainings Today

Oracle DBA - Linux VI Commands

Date Added: 04 Feb.2017 Date Updated: 04 Feb.2017 Oracle DBA Full Blog

 

 ---->>> To Start vi

1

vi filename

Create or Edit filename starting at line 1

2

vi -r filename

Recover filename that was being edited when system crashed

 

---->>> To Exit vi

1

:x<return>

Quit vi, writing out modified file to file named in original invocation

2

:wq<return>

Quit vi, writing out modified file to file named in original invocation

3

:q<return>

Quit or exit vi

4

:q!<return>

 Quit vi even though latest changes have not been saved for this vi call


---->>> Moving the cursor

 

1

j or <return>

[or down-arrow]

 Move cursor down one line

2

k[or up-arrow]

Move cursor up one line

3

h or<backspace>

[or left-arrow]

Move cursor left one line

4

0(zero)

Move cursor to start of current line(the one  with the arrow)

5

$

Move cursor to end of the current line

6

w

Move cursor to beginning of next word

7

b

Move cursor back to beginning of preceding word

8

:0<return> or 1G

Move cursor to first line in file

9

:n<return>or nG

Move cursor to line n in file

10

:$<return>or G

Move cursor to last line in file

 

---->>>Adding, Changing, Deleting the text

1

u

Undo whatever you just did(a simple toggle)

 

---->>> Inserting or Adding text

 

1

i

Insert text before cursor, until<esc>hit

2

I

Insert text at beginning of current line, until<esc>hit

3

a

Append text after cursor, until<esc>hit

4

A

Append text to end of current line, until<esc>hit

5

o

Open and put text in a new line below current line, until<esc>hit

6

O

Open and put text in a new line above current line, until<esc>hit

 

---->>> Changing the text

1

r

Replace single character under cursor(no <esc>needed)

2

R

Replace characters, starting with current cursor position, until<esc>hit

3

cw

Change the current word with new text, starting with the character under cursor, until<esc>hit

4

cNw

Change N words beginning with the character under cursor, until<esc>hit

5

c

change(replace)the characters in the current line, until<esc>hit

6

cc

change(replace)the characters in the current line, stopping when <esc>hit

7

Ncc or cNc

change(replace)the next N lines, starting with the current line, stopping when <esc>hit

 

---->>> Deleting the text

 

1

x

Delete single character under cursor

2

Nx

Delete N characters, starting with character under cursor

3

dw

Delete the single word beginning with character under cursor

4

dNw

Delete N words beginning with character under cursor

5

D

Delete the remainder of the line, starting with current cursor position

6

dd

Delete entire current line

7

Ndd or dNd

Delete N lines beginning with the current line

 

---->>> Cutting and pasting the text

 

1

yy

Copy (yank, cut) the current line into buffer

2

Nyy or yNy

copy(yank, cut) the next N lines, Including the current line, into the buffer

3

p

put(paste) the lines in the buffer into the text after the current line

 

---->>> Searching the text

 

1

/string

Search forward for occurence of string in text

2

?string

Search backward for occurence of string in text

3

n

Move to next occurence of search string

4

N

Move to next occurence of search string in opposite direction

 

---->>> Determining line numbers

 

1

:.=

Returns line number of current line at bottom of screen

2

:=

Returns the total number of lines at bottom of the screen

 

---->>> Saving and reading files

 

1

:r filename<return>

Read file named filename and insert after current line(the line with arrow)

2

:w<return>

Write current contents to a file named in original vi call

3

:w new file<return>

Write current contents to a new file named newfile

4

:12,35w small file<return>

Write the contents of the line numbered 12 through 35 to a new file named small file

5

:w! prevfile<return>

Write current contents over a pre-existing file named prevfile