Linux命令之vi編輯器命令詳解
1.vi編輯器有三種模式: 插入模式 命令模式 轉義模式
2.單文字常用命令詳解(vi 檔名)
命令分類 |
命令模式下輸入 |
功能說明 |
進入插入模式 |
i |
在當前游標之前插入 |
a |
在當前游標之後插入 |
|
o |
在當前游標下面插入新的一行並輸入 |
|
I |
在當前游標所在行行首插入 |
|
A |
在當前游標所在行行尾插入 |
|
O |
在當前游標上面插入新的一行並輸入 |
|
游標移動 |
h、j、k、l |
游標分別向上下左右移動 |
G |
游標移動至檔案的最後一行 |
|
n+G |
游標移動至第n行 |
|
刪除字元 |
x |
刪除游標所在位置上的字元 |
dd |
刪除游標所在行 |
|
n+x |
向後刪除n個字元,包含游標所在位置 |
|
n+dd |
向下刪除n行,包括游標所在行 |
|
dG |
刪除至檔案尾 |
|
d1G |
刪除至檔案首 |
|
d$/D |
刪除至行尾 |
|
d0 |
刪除至行首 |
|
dw |
刪除至詞尾 |
|
ndw |
刪除後面的n個詞 |
|
複製貼上 |
yy |
將游標所在行復制 |
y1G |
複製到檔案首 |
|
yG |
複製到檔案尾 |
|
y0 |
複製到行首 |
|
y$ |
複製到行尾 |
|
n+yy |
將從游標所在行起向下的n行復制 |
|
n+yw |
將從游標所在位置起向後的n個字元複製 |
|
p |
將複製的字串貼上在當前游標的後(下)面 |
|
P |
將複製的字串貼上在當前游標的前(上)面 |
|
字串查詢 |
/字串 enter |
向後查詢指定的字串 |
?字串 enter |
向前查詢指定的字串 |
|
n |
繼續查詢滿足條件的字串 |
|
顯示行號 |
:set nu |
每一行前顯示行號 |
:set nonu |
不顯示行號 |
|
檔案存取 |
:n,nw w檔名 |
將第n-m行的內容寫入指定檔案 |
:n,nw w >>檔名 |
將第n-m行的內容追加到指定檔案末尾 |
|
:r 檔名 |
讀取指定檔案,插到當前游標所在的行下面 |
|
:r! |
在當前游標插入命令執行結果 |
|
:e 檔名 |
在原視窗開啟新檔案 |
|
:e! |
放棄所有修改重新編輯 |
|
存檔與退出 |
:w 檔名 |
以指定的檔名存檔,不退出VI |
:wq 檔名 |
以指定的檔名存檔並退出VI |
|
:q |
退出VI |
|
:q! |
強行退出VI,不管是否完成文件的儲存工作 |
3.多文字編輯常用命令(vi 檔名列表)
命令模式下輸入 |
功能說明 |
:edit 檔名 |
關閉當前檔案並開啟另一個檔案,若當前檔案未儲存,則報錯。 |
:write(:w) |
儲存當前檔案 |
:next |
編輯檔案列表的下一個檔案,若當前檔案未儲存,則報錯。 |
:next! |
編輯檔案列表的下一個檔案,放棄當前檔案的修改 |
:wnext |
儲存當前檔案並編輯檔案列表的下一個檔案 |
:args |
顯示檔案列表 |
:previous |
編輯檔案列表的前一個檔案,若當前檔案未儲存,則報錯。 |
:wprevious |
儲存當前檔案並編輯檔案列表的前一個檔案 |
:first |
定位到檔案列表的第一個檔案 |
:last |
定位到檔案列表的最後一個檔案 |
:2next |
向後跳兩個檔案 |
:set autowrite |
設定自動儲存 |
:set noautowrite |
取消自動儲存 |
:args 檔名類別 |
編輯另一個檔案列表 |
Ctrl+^ |
當前檔案和剛編輯過的檔案之間切換 |
:sp(:vsp) 檔名 |
分割出一個視窗,並在視窗中開啟檔案 |
:e |
在原視窗中開啟新檔案 |
Ctrl+W |
分割視窗之間的游標切換 |
:ls |
檢視已開啟的檔案有多少個 |
:b |
|
:set diff |
比較兩個檔案,在兩個檔案中分別用該命令,檢視比較結果 |
:vsp 檔名 |
開啟一個新檔案 |