VI編輯器常用命令介紹

2021-06-18 15:40:41 字數 4196 閱讀 9447

linux

linux vi命令

一.簡介

vi是unix世界中最通用的全屏編輯器,linux中是用的是vi的加強版vim,vim同vi完全相容,vi就是"visual inte***ce"的縮寫。它可以執行輸出、刪除、查詢、替換、塊操作等眾多文字操作,而且使用者可以根據自己的需要對其進行定製,這是其它編輯程式所沒有的。

vi不是乙個排版程式,它不象word或wps那樣可以對字型、格式、段落等其他屬性進行編排,它只是乙個文字編輯程式。

vi沒有選單,只有命令,且命令繁多。只要在命令列上鍵入vi就可進入vi的編輯環境。vi有三種狀態:命令模式,文字輸入模式和末行模式。鍵入vi回車後首先進入vi的命令模式。

在命令模式下使用者輸入的任何字元都被vi當作命令加以解釋執行,如果使用者要將輸入的字元當作是文字內容時,則首先應將vi的工作模式從命令模式切換到文字輸入模式。在命令模式下,按一下"a"("a")鍵或者」i」 ("i")或者"o"("o")鍵,即進入插入態文字輸入模式。按"a"鍵,插入到當前游標的後面;按"i"鍵,在當前游標處插入;按"a"鍵,在當前游標所在行的最後插入;按"i"鍵,在當前游標所在行的開頭插入。在文字輸入模式下,按esc鍵,即回到命令模式。

末行模式也稱ex轉義模式。vi有乙個專門的「轉義」命令,可訪問很多面向行的ex命令。在命令模式下,使用者按「:」鍵即可進入末行模式下,此時vi會在顯示視窗的最後一行(通常也是螢幕的最後一行)顯示乙個「:」作為末行模式的提示符,等待使用者輸入命令。多數檔案管理命令都是在此模式下執行的(如把編輯緩衝區的內容寫到檔案中等)。末行命令執行完後,vi自動回到命令模式。

例如::1,$s /a/a/g

則從檔案第一行至檔案尾將大寫a全部替換成小寫a。

若在末行模式下輸入命令過程中想轉換的到命令模式,可按鍵,或用退格鍵將輸入的命令全部刪除之後,再按一下退格鍵,即可使vi回到命令模式下。

如果要從命令模式轉換到編輯模式,可以鍵入命令a或者i;如果需要從文字模式返回,則按esc鍵即可。在命令模式下輸入「:」即可切換到末行模式,然後輸入命令。

vi中的許多命令都要用到行號及行數等數值。若編輯的檔案較大時,自己去數是非常不方便的。為此vi提供了給文字加行號的功能。這些行號顯示在螢幕的左邊,而相應行的內容則顯示在行號之後。 需要說明的是,這裡加的行號只是顯示給使用者看的,它們並不是檔案內容的一部分。

當用vi建立乙個新檔案時,在進入vi的命令中也可以不給出檔名,當編輯完檔案需要儲存資料時,再由使用者指定檔名。

進入vi時,使用者不僅可以指定乙個待編輯的檔名,而且還有許多附加操作。如果希望在進入vi之後,游標處於檔案中特定的某行上,可在vi後加上任選項+n,其中n為指定的行數。例如 鍵入命令:vi +3 example.txt後,游標將位於檔案example.txt中的第3行上。

二.vi常用的命令

1.插入(insert)命令

vi提供了兩個插入命令:i 和 i命令

(1)i命令

插入文字從游標所在位置前開始,並且插入過程中可以使用鍵刪除錯誤的輸入。此時vi處於插入狀態,螢幕最下行顯示「--insert--」(插入)字樣。

例1,有一正在編輯的檔案,如下所示:

welcome to vi world!come on!~~

游標位於第乙個「!」上,需在其前面插入:

this is an example!

使用i命令,並輸入相應文字後,螢幕顯示如下:

welcome to vi world this is an example!!come on!~~

由此例可以看到,游標本來是在第乙個「!」處,但是由於是從游標所在位置前開始插入,所以這個「!」就被擠到了新插入的文字之後。

(2)i命令

該命令是將游標移到當前行的行首,然後在其前插入文字.

2.游標移動操作在螢幕上移動 

全螢幕文字編輯器中,游標的移動操作無疑是最經常使用的操作了。使用者只有熟練地使用移動游標的這些命令,才能迅速準確地到達所期望的位置處進行編輯。 

vi中的游標移動既可以在命令模式下,也可以在文字輸入模式下,但操作的方法不盡相同。 

(1)在文字輸入模式下,可直接使用鍵盤上的四個方向鍵移動游標。 

(2)在命令模式下,有很多移動游標的方法。不但可以使用四個方向鍵來移動游標,還可以用h、j、k、l這四個鍵代替四個方向鍵來移動游標,這樣可以避免由於不同機器上的不同鍵盤定義所帶來的矛盾,而且使用熟練後可以手不離開字母鍵盤位置就能完成所有操作,從而提高工作效率。 

3.在螢幕上移動 

vi提供了三個關於游標在全螢幕上移動並且檔案本身不發生滾動的命令。它們分別是h、m和l命令。 

(1)h命令 

該命令將游標移至螢幕首行的行首(即左上角),也就是當前螢幕的第一行,而不是整個檔案的第一行。利用此命令可以快速將游標移至螢幕頂部。若在h命令之前加上數字n,則將游標移至第n行的行首。值得一提的是,使用命令dh將會刪除從游標當前所在行至所顯示螢幕首行的全部內容。 

(2)m命令 

該命令將游標移至螢幕顯示檔案的中間行的行首。即如果當前螢幕已經充滿,則移動到整個螢幕的中間行;如果並未充滿,則移動到文字的那些行的中間行。利用此命令可以快速地將游標從螢幕的任意位置移至螢幕顯示檔案的中間行的行首。例如,在上面螢幕顯示的情況下(不論游標在螢幕的何處),在命令模式下,輸入命令m之後,游標都將移到add這一行的字母a上。同樣值得一提的是,使用命令dm將會刪除從游標當前所在行至螢幕顯示檔案的中間行的全部內容。 

(3)l命令 

當檔案顯示內容超過一屏時,該命令將游標移至螢幕上的最底行的行首;當檔案顯示內容不足一屏時,該命令將游標移至檔案的最後一行的行首。可見,利用此命令可以快速準確地將游標移至螢幕底部或檔案的最後一行。若在l命令之前加上數字n,則將游標移至從螢幕底部算起第n行的行首。同樣值得一提的是,使用命令dl將會刪除從游標當前行至螢幕底行的全部內容。 

4.編輯命令 

讓我們看看最簡單也是最常用的編輯過程:沒有人不犯錯誤。所以遲早你會碰到修改你輸入的文字的時候。實際上花在字處理上的大多數時間是修改而不是輸入新的東西。因此,你要知道如何方便地修改就很重要。 

(1)x--刪除乙個字元 

刪除文字的最簡單的方式是用x。這個命令的結果是游標所處的字元的消失,後面的文字左移動。如果你刪除的字元是一行最後的乙個字元,那麼游標將向左移動乙個,這樣游標就不會停留在不存在的字元的下面了。假如沒有任何文字了,喇叭就叫。 

(2)d--刪除物件 

這個命令的右邊還要有一定的文字物件。文字物件就是一塊文字。他右邊接的就是在控制游標移動的那些字元。例如 w 表示向前乙個單詞,那麼 dw 將刪除下乙個單詞。5w 表示前進5個單詞,那麼 d5w 將刪除他們。 

(3)dd--刪除一行 

最常用的 d 系列命令之一。和前面一樣, 5dd 將刪除 5 行 

(4)d--整個刪除 

大寫形式的 d 用來刪除從游標到行尾。和 d$ 一樣效果。 

(5)u--恢復 

要後悔嗎?他不僅僅撤消刪除,還撤消你所有的編輯工作。 

(6).--重複 

重複編輯工作。 

5.退出vi 

當編輯完檔案,準備退出vi返回到shell時,可以使用以下幾種方法之一。 

(1)在命令模式中,連按兩次大寫字母z,若當前編輯的檔案曾被修改過,則vi儲存該檔案後退出,返回到shell;若當前編輯的檔案沒被修改過,則vi直接退出, 返回到shell。 

(2)在末行模式下,輸入命令 :w vi儲存當前編輯檔案,但並不退出,而是繼續等待使用者輸入命令。在使用w命令時,可以再給編輯檔案起乙個新的檔名。 

例如:w newfile 

此時vi將把當前檔案的內容儲存到指定的newfile中,而原有檔案保持不變。若newfile是乙個已存在的檔案,則vi在顯示視窗的狀態行給出提示資訊: 

file exists (use ! to override) 

此時,若使用者真的希望用檔案的當前內容替換newfile中原有內容,可使用命令 

:w! newfile 

否則可選擇另外的檔名來儲存當前檔案。 

(3)在末行模式下,輸入命令 :q 系統退出vi返回到shell。若在用此命令退出vi時,編輯檔案沒有被儲存,則vi在顯示視窗的最末行顯示如下資訊: 

no write since last change (use ! to overrides) 

提示使用者該檔案被修改後沒有儲存,然後vi並不退出,繼續等待使用者命令。若使用者就是不想儲存被修改後的檔案而要強行退出vi時,可使用命令:q! vi放棄所作修改而直接退到shell下。 

(4)在末行模式下,輸入命令 :wq vi將先儲存檔案,然後退出vi返回到shell。 

(5)在末行模式下,輸入命令 :x 該命令的功能同命令模式下的zz命令功能相同。

vi編輯器常用命令

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

vi編輯器常用命令

vi編輯器有3種模式 命令模式 輸入模式 末行模式。掌握這三種模式十分重要 1.命令模式 vi啟動後預設進入的是命令模式,從這個模式使用命令可以切換到另外兩種模式,同時無論在任何模式下只要按一下 esc 鍵都可以返回命令模式。在命令模式中輸入字幕 i 就可以進入vi的輸入模式編輯檔案。2.輸入模式 ...

vi編輯器常用命令

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