linux之vim編輯器

2022-04-10 10:39:06 字數 3387 閱讀 3658

vi簡介

1. vi是一種廣泛存在於各種unix和linux系統中的文字編輯程式。

2. vi不是排版程式,只是乙個純粹的文字編輯程式。

3. vi是全螢幕文字編輯器,它沒有選單,只有命令。

4. vi不是基於視窗的,所以,這個多用途編輯程式可以用於在任何型別的終端上編輯各式各樣的檔案。

5. vi的功能十分強大,但是命令繁多,熟練掌握起來有一定難度。

6. vi的發明者:bill joy

vi的啟動

$ vi  filename  或者$ vi

如果filename已經存在,vi會開啟現存盤案

如果是乙個新檔案,vi會建立它

vi的退出

在命令列模式下輸入:q,:q!,:wq或者:x,可以退出vi

:w                  儲存

:w filename         另存為filename

:wq!                儲存並退出

:wq! filename       以filename為檔名儲存後退出

:q!                 不儲存退出

:x                  儲存並退出,功能和:wq!相同

vi的工作模式

vi有三種工作模式,分別為:命令模式、插入模式(編輯模式)和末行模式,三種模式分別進行不同的操作,它們之間可以進行切換。 1. 命令模式:進入vi後,首先進入的就是命令模式,等待使用者輸入編輯命令,此時輸入的字母將作為編輯命令來解釋。

2. 插入模式:在命令模式下輸入插入命令i、附加命令a、開啟命令o等命令可以進入插入模式,在插入模式下,使用者輸入可以對文字進行編輯,輸入的任何字元都被當作檔案內容儲存起來。【esc】鍵可以返回命令模式。

3. 末行模式:在命令模式下,按【:】鍵可以進入末行模式,vi游標會顯示在視窗的最後一行,以「:」作為末行模式的提示符,等待使用者輸入命令。末行命令執行後,vi自動回到命令模式。

進入vi的命令 

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

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

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

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

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

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

移動游標類命令

h :游標左移乙個字元 

l :游標右移乙個字元 

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;向檔案首翻一屏 

nz:將第n行滾至螢幕頂部,不指定n時將當前行滾至螢幕頂部。 

插入文字類命令 

i :在游標前 

i :在當前行首 

a:游標後 

a:在當前行尾 

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

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

r:替換當前字元 

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

s:從當前游標位置處開始,以輸入的文字替代指定數目的字元 

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

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

ncc:修改指定數目的行 

刪除命令 

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

do:刪至行首 

d$:刪至行尾 

ndd:刪除當前行及其後n-1行 

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替換 

選項設定 

all:列出所有選項設定情況 

term:設定終端型別 

ignorance:在搜尋中忽略大小寫 

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

number:顯示行號 

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

terse:顯示簡短的警告資訊 

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

nomagic:允許在搜尋模式中,使用前面不帶「\」的特殊字元 

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

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

最後行方式命令 

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

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

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

:w :儲存當前檔案 

:e filename:開啟檔案filename進行編輯 

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

:q:退出vi 

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

:!command:執行shell命令command 

:n1,n2 w!command:將檔案中n1行至n2行的內容作為command的輸入並執行之,若不指定n1,n2,則表示將整個檔案內容作為command的輸入 

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

linux 之vim編輯器

ctrl v 進入視覺塊 visual block 其中字元代表的含義 v 字元選擇,會將游標經過的地方反白選擇 v 行選擇,會將游標經過的行反白選擇 ctrl v 區塊選擇,可以用長方形的方式選擇資料 y 將反白的地方複製起來 d 將反白的地方刪除掉 批量插入注釋 按v進入virtual模式 用上...

linux之vim編輯器

以vi開啟乙個檔案就直接進入一般模式了 這是預設的模式 在這個模式中,你可以使用 上下左右 按鍵來移動游標,你可以使用 刪除字元 或 刪除整行 來處理檔案內容,也可以使用 複製 貼上 來處理你的檔案資料。在一般模式中可以進行刪除 複製 貼上等的動作,但是卻無法編輯檔案內容的!要等到你按下 i,i,o...

Linux之Vim編輯器

vim介紹就不說了,非常強大,神級的編輯器,你可以把它理解為windows上面的sublime vim三種模式 命令模式 該模式下不能對檔案內容直接編輯,可以輸入命令進行操作 編輯模式 可以對內容直接進行編輯 末行模式 可以在末行輸入命令來對檔案進行操作 了解三種模式之後,再了解一下vim的開啟檔案...