vi編輯器的使用和常用命令

2021-04-20 00:08:14 字數 3007 閱讀 8825

以linux下編輯hello.c為例子

#vi hello.c回車後進入編輯器

vi filename:開啟或新建檔案,並將游標置於第一行首

vi +n filename:開啟檔案,並將游標置於第n行首

vi + filename:開啟檔案,並將游標置於最後一行首

vi +/pattern filename:開啟檔案,並將游標置於第乙個與pattern匹配的串處

vi -r filename:在上次正用vi編輯時發生系統崩潰,恢復filename

vi filename....filename :開啟多個檔案,依次編輯

vi分為插入模式、命令模式及末行命令模式

由插入模式到命令模式的轉換:esc

h:游標左移乙個字元l:

游標右移乙個字元j:

游標下移乙個字元k:

游標上移乙個字元

space

:游標右移乙個字元

backspace

:游標左移乙個字元k或

ctrl+p

:游標上移一行j或

ctrl+n

:游標下移一行

enter

:游標下移一行w或

w:游標右移乙個字至字首

b或b:游標左移乙個字至字首

e或e:游標右移乙個字至字尾

):游標移至句尾

( :游標移至句首

}:游標移至段落開頭

{:游標移至段落結尾

ng:游標移至第n行首

+n:游標下移n行

-n:游標上移n行

n$:游標移至n行尾

h:游標移至螢幕頂行

m:游標移至螢幕中間行

l:游標移至螢幕最後行

0:(注意是數字零)游標移至當前行首

$:游標移至當前行尾

ctrl+u

:向檔案首翻半屏

ctrl+d

:向檔案尾翻半屏

ctrl+f

:向檔案尾翻一屏

ctrl+b:

向檔案首翻一屏

ctrl+e:

螢幕下卷一行

插入文字類命令

i:在游標前

i:在當前行首

a:游標後

a:在當前行尾

o:在當前行之下新開一行

o:在當前行之上新開一行

r:替換當前字元

r:替換當前字元及其後的字元,直至按esc鍵

s:從當前游標位置處開始,以輸入的文字替代之

s:刪除指定數目的行,並以所輸入文字代替之

ncw或ncw:修改指定數目的字

nc:修改指定數目的行

>>:右移當前段落乙個移動寬度(shiftwidth)

<<:左移當前段落乙個移動寬度(shiftwidth)

yy:複製當前行

nyy:複製當前開始的n行

p:在當前行的下面貼上

p:在當前行的上面貼上

ndw或ndw:刪除游標處開始及其後的n-1個字

d^:刪至行首

d$:刪至行尾

ndd:刪除從當前行開始的n行

x或x:刪除乙個字元,x刪除游標後的,而x刪除游標前的

ctrl+u:刪除輸入方式下所輸入的文字

/pattern

:從游標開始處向檔案尾搜尋

pattern

?pattern

:從游標開始處向檔案首搜尋

pattern

n:在同一方向重複上一次搜尋命令n:

在反方向上重複上一次搜尋命令

:s/p1/p2/g

:將當前行中所有

p1均用

p2替代

:n1,n2s/p1/p2/g:將第

n1至n2行中所有

p1均用

p2替代

:g/p1/s//p2/g

:將檔案中所有

p1均用

p2替換

. 重複上乙個操作

u 撤消上一次操作

~ 切換字元的大小寫

語法:

:set <

選項》 <

引數》 (

如果需要引數的話

)

也可以在一行中指定多個選項

:set all 則顯示所有的選項值

對那些無須引數的選項來說,使用:set no《選項》就可以把它給關了

term:設定終端型別

ignorance:在搜尋中忽略大小寫

list:顯示製表位(ctrl+i)和行尾標誌($)

number:顯示行號

report:顯示由面向行的命令修改過的數目

terse:顯示簡短的警告資訊

warn:在轉到別的檔案時若沒儲存當前檔案則顯示no write資訊

nowrapscan:禁止vi在搜尋到達檔案兩端時,又從另一端開始

mesg:允許vi顯示其他使用者用write寫到自己終端上的資訊

vb t_vb= : vi不響鈴

hlsearch : 高亮顯示搜尋匹配結果 四

行方式命令

:n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下

:n1,n

2 mn3:將n1行到n2行之間的內容移至到第n3行下

:n1,n2 d :將n1行到n2行之間的內容刪除

:w :儲存當前檔案

:e filename:不離開vi編輯《檔案》

:e!

:n :編輯下乙個檔案

:x:儲存當前檔案並退出

:q:退出vi

:q!:不儲存檔案並退出vi

:!command:執行shell命令command

:r!command:將命令command的輸出結果放到當前行。

附:vim中顯示顏色或不顯示顏色

首先確保安裝了vim-enhanced包,然後,vi ~/.vimrc;如果有syntax on,則顯示顏色,syntax off,則不顯示顏色

vi編輯器常用命令

vi編輯器常用命令 一般模式 游標移動 ctrl f 螢幕向前翻動一頁 ctrl b 螢幕向後翻動一頁 n按下數字鍵後再按空格鍵,游標向右移動這一行的n個字元 0 數字零 移動到本行的第乙個字元處 移動到這一行的最後乙個字元處 g 游標移動到檔案的最後一行 ng 游標移動到檔案的第n行 n游標向下移...

vi編輯器常用命令

vi編輯器有3種模式 命令模式 輸入模式 末行模式。掌握這三種模式十分重要 1.命令模式 vi啟動後預設進入的是命令模式,從這個模式使用命令可以切換到另外兩種模式,同時無論在任何模式下只要按一下 esc 鍵都可以返回命令模式。在命令模式中輸入字幕 i 就可以進入vi的輸入模式編輯檔案。2.輸入模式 ...

vi編輯器常用命令

對於vi的命令列,不需要特意的去記憶,寫下來,讓要用到的時候能找到就行 游標控制 h游標向左移 j游標向下移 k游標向上移 l or spacebar 游標向右移 w向前移動乙個單詞 b向後移動乙個單詞 e向前移動乙個單詞,且游標指向單詞的末尾 移到當前句子的首部 移到下乙個句子的首部 移到下一段的...