vi技巧總結

2021-04-02 19:08:47 字數 2316 閱讀 3086

vi三種模式

命令列模式

任何時候,不管使用者處於何種模式,只要按一下鍵,即可使vi進入命令列模式;我們在shell環境(提示符為$)下輸入啟動vi命令,進入編輯器時,也是處於該模式下。

文字輸入模式

在命令模式下輸入插入命令i、附加命令a 、開啟命令o、修改命令c、取代命令r或替換命令s都可以進入文字輸入模式。在該模式下,使用者輸入的任何字元都被vi當做檔案內容儲存起來,並將其顯示在螢幕上。在文字輸入過程中,若想回到命令模式下,按鍵即可。

末行模式

末行模式也稱ex轉義模式。

vi和ex編輯器的功能是相同的,二者主要區別是使用者介面。在vi中,命令通常是單個鍵,例如i、a、o等;而在ex中,命令是以按回車鍵結束的正文行。vi有乙個專門的「轉義」命令,可訪問很多面向行的ex命令。在命令模式下,使用者按「:」鍵即可進入末行模式下,此時vi會在顯示視窗的最後一行(通常也是螢幕的最後一行)顯示乙個「:」作為末行模式的提示符,等待使用者輸入命令。多數檔案管理命令都是在此模式

1  常用

如果想不退出vi而檢視unix系統的有關資訊,輸入「:shell 」即可進入vi以前的shell環境,

「exit」退回到vi編輯狀態。

:set number  設定行號

shift+zz 儲存後自動退出

ctrl+g  顯示當前行

2   游標移動

8z16《回車》 :將檔案中的第8行作為螢幕顯示的首行,並一共顯示16行。

15z . :將檔案中的第15行作為螢幕顯示的中間行,顯示行數為整屏。

15z 5_ :將檔案中的第15行作為螢幕顯示的最末行,顯示行數為5行。

shift+l  移動至行首

shift+$  移動至行尾

3+enter  游標下移3行至行首

3j        游標下移3行

3k        游標上移3行

3l        游標後移3列

gg 移至行首

shift+g 移至行尾

49gg      游標移至49行 但是gg之間須有小停頓

shift+(  該命令將游標向前移至上乙個句子的開頭;

shift+)  該命令將游標向前移至上乙個句子的結尾;

shift+ 命令  該命令將游標向後移至下乙個段的開頭。

3  文字插入

i 或者  shift+i(移至行首插入)  

a(當前)   shift+a(行尾) 

o(插入下一行)

shift+o(插入當前行)

u (undo)  . (redo)

4   文字刪除

dd  刪除當前行

8dd 刪除游標行及以下7行

d或d$:兩命令功能一樣,都是刪除從游標所在處開始到行尾的內容。

d0:刪除從游標前乙個字元開始到行首的內容。

dw:刪除乙個單詞。若游標處在某個詞的中間,則從游標所在位置開始刪至詞尾。

5  文字修改

c7g  即把游標所在行至第7行(共2行)的內容刪除,並進入文字輸入模式,接著輸入

c 、可以修改從游標當前位置開始到該行末尾

8c 從游標當前位置開始到下面8行末尾範圍內的內容

cc  可以修改從游標當前行起始位開始到該行末尾

6  文字替換

s(小寫):該命令表示用隨後輸入的文字替換當前游標所在的字元。

s(大寫):該命令表示用新打入的正文替換游標當前行(整行)(不管游標位於何列)。

cw所替換的是乙個狹義的字。輸入這個命令後,vi將把游標處的那個字刪除,然後使用者可輸入任何文字內容。

:%s#/usr/bin#/bin#g可以把檔案中所有路徑/usr/bin換成/bin。也可以使用命令:

7   文字行的合併

j(大寫字母)表示,其功能是把游標所在行與下面一行合併為一行

nj (大寫字母)表示,其功能是把游標所在行與下面n行合併為一行

8   文字行的移動

shift+>> 命令將限定正文行(螢幕的首行)向右移動,通常是8個空格

我們可以利用下面的步驟完成文字行從乙個地方移至另外乙個地方。

將游標移至待移動文字的首行;

按ndd命令。其中n為待移動的行數。此時vi將把待移動的文字行從檔案中刪除,並將其放入到1號刪除暫存器中;

將游標移動到目的行處;

按 1p將待移動的文字行從刪除暫存器中取出。 (np表示從第n個暫存器中取出東西)

:5m3  把第5行內容移至第三行下

:2,5 m 0 表示把檔案中的第二行至第五行的內容移至檔案頭(第零行之下,這個零行使乙個虛行)。

9   文字內容進行排序

:.,+3!sort  對第二個字段(3-1)按照順序排序後輸出改變

vi使用技巧總結

1.進入vi 用vi開啟檔案 vi etc passwd 剛一開啟檔案是進入命令模式的 2.直接進入指定位置處 直接將游標定位到第n行 vi n 檔名 將游標定位到某字串處 vi 字串 檔名 3.進入編輯模式 i 在當前游標所在位置,插入隨後輸入的文字,游標後的文字相應的向右移動 i 在游標所在行的...

VI使用技巧

vi命令可以說是unix linux世界裡最常用的編輯檔案的命令了,但是因為它的命令集眾多,很多人都不習慣使用它,其實您只需要掌握基本命令,然後加以靈活運用,就會發現它的優勢,並會逐漸喜歡使用這種方法。本文旨在介紹vi的一些最常用命令和高階應用技巧。一 基本命令介紹 1 游標命令 k j h l 上...

vi 替換技巧

s vivian sky 替換當前行第乙個 vivian 為 sky s vivian sky g 替換當前行所有 vivian 為 sky n,s vivian sky 替換第 n 行開始到最後一行中每一行的第乙個 vivian 為 sky n,s vivian sky g 替換第 n 行開始到最...