vi編輯器常用命令

2021-06-22 20:04:50 字數 2017 閱讀 2327

vi編輯器有3種模式:命令模式、輸入模式、末行模式。掌握這三種模式十分重要:

1.命令模式:vi啟動後預設進入的是命令模式,從這個模式使用命令可以切換到另外兩種模式,同時無論在任何模式下只要按一下[esc]鍵都可以返回命令模式。在命令模式中輸入字幕「i」就可以進入vi的輸入模式編輯檔案。

2.輸入模式:在這個模式中我們可以編輯、修改、輸入等編輯工作,在編輯器最後一行顯示乙個「--insert--」標誌著vi進入了輸入模式。當我們完成修改輸入等操作的時候我們需要儲存檔案,這時我們需要先返回命令模式,在進入末行模式儲存。

3.末行模式:在命令模式輸入「:」即可進入該模式,在末行模式中有好多好用的命令。

4.編輯操作

進入輸入模式命令

i插入命令 a附加命令 o開啟命令 c修改命令

r取代命令 s替換命令 esc退出命令

輸入模式的操作

home游標到行首

end 游標到行尾

page up和page down上下翻頁

delect刪除游標位置的字元

刪除操作(命令模式使用)

x刪除游標處的單個字元

dd刪除游標所在行

dw刪除當前字元到單詞尾包括空格的所有字元

#x例如3x刪除游標處向右的三個字元

#dd例如3dd從當前行開始向下刪除三行文字

撤銷操作

u命令取消最近一次的操作,可以使用多次來恢復原有的操作

u取消所有操作

ctrl+r可以恢復對使用u命令的操作

複製操作

yy命令複製當前整行的內容到vi緩衝區

yw複製當前游標所在位置到單詞尾字元的內容到vi快取區,相當於複製乙個單詞

y$複製游標所在位置到行尾內容到快取區

y^複製游標所在位置到行首內容到快取區

#yy例如:5yy就是複製5行

#yw例如:2yw就是複製兩個單詞

如果要複製第m行到第n行之間的內容,可以在末行模式中輸入m,ny例如:3,5y複製第三行到第五行內容到快取區。

5.查詢和替換

vi的查詢和替換功能主要在末行模式完成:

至上而下的查詢

/ 要查詢的字元竄,其中/代表從游標所在位置起開始查詢,例如:/ work

至下而上的查詢

?要查詢的字元竄 例如:/ work

替換:s/old/new用new替換行中首次出現的old

: s/old/new/g 用new替換行中所有出現的old

:#,# s/old/new/g用new替換從第#行到第#行中出現的old

:% s/old/new/g用new替換整篇中出現的old

如果替換的範圍較大時,在所有的命令尾加乙個c命令,強制每個替換需要使用者進行確認,例如:s/old/new/c 或s/old/new/gc

6.恢復檔案

vi在編輯某乙個檔案時,會生成乙個臨時檔案,這個檔案以 . 開頭並以 .swp結尾。正常退出該檔案自動刪除,如果意外退出例如忽然斷電,該檔案不會刪除,我們在下次編輯時可以選擇一下命令處理:

o唯讀開啟,不改變檔案內容

e繼續編輯檔案,不恢復.swp檔案儲存的內容

r將恢復上次編輯以後未儲存檔案內容

q退出vi

d刪除.swp檔案

或者使用vi -r 檔名來恢復未儲存的內容

7.在gui下:

(1)可按i進入插入模式

(2)使用滑鼠拖動反選要貼上的內容,按滑鼠左鍵複製選定塊到緩衝區

(3)然後將游標移到要貼上處,按滑鼠中鍵(兩鍵滑鼠可同時按左右鍵),貼上緩衝區內容。

在純文字終端下:

(1)選定文字塊,使用v進入可視模式;移動游標鍵選定內容

(2)複製選定塊到緩衝區,用y;複製整行,用yy

(3)剪下選定塊到緩衝區,用d;剪下整行用dd

(4)貼上緩衝區中的內容,用p

在同一編輯窗開啟第二個檔案,用:sp [filename]

在多個編輯檔案之間切換,用ctrl+w

命令前面加數字表示重複次數,加字母表示使用的緩衝區名稱。

獲取幫助,用:help [內容或命令]

vi編輯器常用命令

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

vi編輯器常用命令

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

vi 編輯器常用命令

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