Linux中vi編輯器的使用

2021-07-13 09:08:32 字數 3446 閱讀 5890

vi是linux系統中的文字編輯器,是最常用的文字編輯工具軟體之一。vi是字元介面下最常用的編輯工具,其功能強大,占用資源少,但不支援滑鼠操作。現在出現了圖形介面下的vi,稱為vim,啟動選單選項為「開始→應用程式→實用工具→vim編輯器」,支援滑鼠操作,有類似其他軟體的選單和快捷按鈕。字元介面下vi的操作規則可以用在圖形介面下的vim中,下面主要介紹字元介面的vi編輯器。

vi有命令列狀態和文字編輯兩種狀態,vi的命令列狀態的命令豐富,功能強大,在命令列狀態下按insert鍵或者輸入i、i、a等字元進入編輯狀態,在編輯狀態按esc鍵可以回到命令列狀態。

為了防止初學者在進入vi之後無法操作時,使用者需要知道,在vi編輯器中存在三種模式,分別是命令模式、編輯模式、末行模式,對應的是分別進行命令操作,編輯文字文件和退出編輯儲存檔案,其關係如下所示:

圖1 各模式間的裝換

為了更清楚的使用,我們使用vi建立乙個hello.c檔案,並執行,過程如下所示:

首先啟動vi並名命檔案hello.c,如下圖所示:

圖2 示例模式的轉換1

下面是進入vi編輯後的介面,我們在鍵盤上輸入「i」鍵,即可進行編輯模式(同時在左下角有insert字串出現),這是,我們可以進行輸入文字,內容如下圖所示:

圖3 示例模式的轉換2

在輸入完畢之後,我們按「esc」鍵退出編輯模式,進入到命令列模式,接著再按「:」進入到末行模式,此時游標移動到文字最後一行,然後我們輸入"wq"字元進行檔案的存檔退出,如下圖所示:

圖4 示例模式的轉換3

之後就退出到資料夾介面,如下圖所示為我們建立的檔案

圖5 示例模式的轉換4

上面就是一些基本的操作流程,下面讓我們了解更加詳細的vi操作

1、啟動vi編輯器

vi編輯器使用命令vi啟動,啟動方式有多種,如下所示:

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

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

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

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

vi -r filename //恢復上次因系統崩潰而中止編輯的檔案filename。

vi filename1....filenamen //開啟多個檔案,依次進行編輯。 

2、 命令列狀態

1)、文字類

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:游標移至當前行行首。

$:游標移至當前行行尾。

2).螢幕類命令

ctrl+u:螢幕向上滾動半屏,同時游標向上移動到相應行。

ctrl+d:螢幕向下滾動半屏,同時游標向下移動到相應行。

ctrl+b:螢幕向上滾動一屏,同時游標向上移動到相應行。

ctrl+f:螢幕向下滾動一屏,同時游標向下移動到相應行。

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

3).插入文字類命令

s:同命令a。

4).刪除命令

5).搜尋及替換命令

/pattern:從游標開始處向檔案尾搜尋pattern,並對搜尋到的pattern加上標記。

?pattern:從游標開始處向檔案首搜尋pattern,並對搜尋到的pattern加上標記。

:s/p1/p2/g:將當前行中所有p1均用p2代替。

:n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2代替。

:g/p1/s//p2/g:將檔案中所有p1均用p2替換。

:n1,n2co n3:將n1行到n2行之間的內容複製並插入到第n3行下。

:n1,n2 m n3:將n1行到n2行之間的內容移動並插入到第n3行下。

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

6).存檔與退出命令

:w---當前檔案存檔。

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

:q---退出vi。

:q!---不儲存檔案內容並退出vi。

:!command-----執行shell命令command。

:n1,n2 w! filename---將n1至n2行的內容寫入檔名為filename的檔案中。

:r!command-----將shell命令command的執行結果插入到當前行下面。 

7).暫存器操作命令

"?nyy:將當前行及其下n行的內容儲存到暫存器?中,其中?為字母,n為數字。

"?nyw:將當前行及其下n個字儲存到暫存器?中。

"?nyl:將當前行及其下n個字元儲存到暫存器?中。

"?p:取出暫存器?中的內容並將其插入到游標的後面。

ndd:將當前行及其下共n行文字刪除,並將所刪內容放到1號刪除暫存器中。

3、編輯狀態

vi編輯器從命令列狀態進入到編輯狀態後就可以全螢幕的方式對文字內容進行編輯,編輯過程中可以通過鍵盤的「insert」鍵在「插入」和「替換」狀態之間切換,可以使用鍵盤的4個方向鍵及其「home」、「end」、「pageup」、「pagedown」等鍵移動游標,可以使用退格鍵和刪除鍵對文字內容進行刪除。編輯完成後按鍵盤的「esc」鍵回到命令列狀態執行命令「:wq」存檔退出,或者「:q!」不存檔退出。 

linux中vi編輯器的使用

vi編輯器是所有unix及linux系統下標準的編輯器,它的強大不遜色於任何最新的文字 編輯器,這裡只是簡單地介紹一下它的用法和一小部分指令。由於對unix及linux系統的任 何版本,vi編輯器是完全相同的,因此您可以在其他任何介紹vi的地方進一步了解它。vi 也是linux中最基本的文字編輯器,...

linux的vi編輯器

1.vi的啟動 輸入vi命令後,便進入全螢幕編輯環境,此時的狀態為命令模式。1 vi 進入vi的乙個臨時緩衝區,游標定位在該緩衝區第1行第1列的位置上。2 vi file1 如果file1檔案不存在,將建立此檔案 如該檔案存在,則將其拷貝到乙個臨時緩衝區。游標定位在該緩衝區第1行第1列的位置上。3 ...

Linux的VI編輯器

linux如何退出vi編輯器 q 退出 q 強行退出 不存檔 wq 強制性寫入檔案並退出。即使檔案沒有被修改也強制寫入,並更新檔案的修改時間。x 寫入檔案並退出。僅當檔案被修改時才寫入,並更新檔案修改時間,否則不會更新檔案修改時間。用esc鍵只能切換到命令狀態 擴充套件知識 今天我才知道 x 和 w...