Vi的命令詳解

2021-08-27 16:20:49 字數 3947 閱讀 9763

vi命令

unix

作業系統和類

unix

作業系統中最通用的全螢幕純文字編輯器。

linux

中的vi

編輯器叫

vim,它是

vi的增強版(

vi improved

),與vi

編輯器完全相容,而且實現了很多增強功能。 vi

編輯器支援編輯模式和命令模式,編輯模式下可以完成文字的編輯功能,命令模式下可以完成對檔案的操作命令,要正確使用

vi編輯器就必須熟練掌握著兩種模式的切換。預設情況下,開啟

vi編輯器後自動進入命令模式。從編輯模式切換到命令模式使用

「esc」

鍵,從命令模式切換到編輯模式使用

「a」、

「a」、

「o」、

「o」、

「i」、

「i」鍵。 vi

編輯器提供了豐富的內建命令,有些內建命令使用鍵盤組合鍵即可完成,有些內建命令則需要以冒號「:

」開頭輸入。常用內建命令如下:

ctrl+u:向檔案首翻半屏;
ctrl+d:向檔案尾翻半屏;
ctrl+f:向檔案尾翻一屏;
ctrl+b:向檔案首翻一屏;
zz:命令模式下儲存當前檔案所做的修改後退出vi;
:行號:游標跳轉到指定行的行首;
:$:游標跳轉到最後一行的行首;
x或x:刪除乙個字元,x刪除游標後的,而x刪除游標前的;
d:刪除從當前游標到游標所在行尾的全部字元;
dd:刪除游標行正行內容;
ndd:刪除當前行及其後n-1行;
nyy:將當前行及其下n行的內容儲存到暫存器?中,其中?為乙個字母,n為乙個數字;
p:貼上文字操作,用於將快取區的內容貼上到當前游標所在位置的下方;
p:貼上文字操作,用於將快取區的內容貼上到當前游標所在位置的上方;
/字串:文字查詢操作,用於從當前游標所在位置開始向檔案尾部查詢指定字串的內容,查詢的字串會被加亮顯示;
?name:文字查詢操作,用於從當前游標所在位置開始向檔案頭部查詢指定字串的內容,查詢的字串會被加亮顯示;
a,bs/f/t:替換文字操作,用於在第a行到第b行之間,將f字串換成t字串。其中,「s/」表示進行替換操作;
a:在當前字元後新增文字;
a:在行末新增文字;
i:在當前字元前插入文字;
i:在行首插入文字;
o:在當前行後面插入一空行;
o:在當前行前面插入一空行;
:wq:在命令模式下,執行存檔退出操作;
:w:在命令模式下,執行存檔操作;
:w!:在命令模式下,執行強制存檔操作;
:q:在命令模式下,執行退出vi操作;
:q!:在命令模式下,執行強制退出vi操作;
:n:在命令模式下,如果同時開啟多個檔案,則繼續編輯下乙個檔案;
:f:在命令模式下,用於顯示當前的檔名、游標所在行的行號以及顯示比例;
:set number:在命令模式下,用於在最左端顯示行號;
:set nonumber:在命令模式下,用於在最左端不顯示行號;
vi(選項)(引數)
+《行號》:從指定行號的行開始先是文字內容;

-d:以diff模式開啟檔案,當多個檔案編輯時,顯示檔案差異部分;
-l:使用lisp模式,開啟「lisp」和「showmatch」;
-m:取消寫檔案功能,重設「write」選項;
-m:關閉修改功能;
-n:不實用快取功能;
-o《檔案數目》:指定同時開啟指定數目的檔案;
-r:以唯讀方式開啟檔案;
-s:安靜模式,不現實指令的任何錯誤資訊。
viex

轉義方式。通過相應的命令或操作,在這三種工作方式之間可以進行轉換。

命令方式

在shell

提示符後輸入命令

vi,進入

vi編輯器,並處於

vi的命令方式。此時,從鍵盤上輸入的任何字元都被作為編輯命令來解釋,例如,

)表示附加命令,

i(insert

)表示插入命令,

x表示刪除字元命令等。如果輸入的字元不是

vi的合法命令,則機器發出

「報警聲

」,游標不移動。另外,在命令方式下輸入的字元(即

vi命令)並不在螢幕上顯示出來,例如,輸入

i,螢幕上並無變化,但通過執行i

輸入方式

通過輸入

vi的插入命令(

i)、附加命令(

a)、開啟命令(

o)、替換命令(

s)、修改命令

(c)或取代命令(

r)可以從命令方式進入輸入方式。在輸入方式下,從鍵盤上輸入的所有字元都被插入到正在編輯的緩衝區中,被當做該檔案的正文。進入輸入方式後,輸入的可見字元都在螢幕上顯示出來,而編輯命令不再起作用,僅作為普通字母出現。例如,在命令方式下輸入字母

i,進到輸入方式,然後再輸入

i,就在螢幕上相應游標處新增乙個字母i。

由輸入方式回到命令方式的辦法是按下

esc鍵。如果已在命令方式下,那麼按下

esc鍵就會發出「嘟嘟

」聲。為了確保使用者想執行的

vi命令是在命令方式下輸入的,不妨多按幾下

esc鍵,聽到嘟聲後再輸入命令。

ex轉義方式vi和

ex編輯器的功能是相同的,二者的主要區別是使用者介面。在

vi中,命令通常是單個字母,如

a,x,r

等。而在

ex中,命令是以

enter

;鍵結束的命令列。

vi有乙個專門的「轉義

」命令,可訪問很多面向行的

ex命令。為使用

ex轉義方式,可輸入乙個冒號(

:)。作為

ex命令提示符,冒號出現在狀態行(通常在螢幕最下一行)。按下中斷鍵(通常是

del鍵),可終止正在執行的命令。多數檔案管理命令都是在

ex

:1,$s/i/i/g 按enter鍵
則從檔案第一行至檔案末尾(

$)將大寫

i全部替換成小寫i。

vi編輯器的三種工作方式之間的轉換如圖所示。

vi命令詳解

vi命令的使用 a vi檔名 文字檔案 進入vi後分三種狀態 1.ng表示讓游標到第n行 2.g表示檔案尾 3.1g表示檔案首 4.表示行首 5.表示行尾 6.x表示刪除乙個字元 7.dd表示剪下當前行 8.r表示替換乙個字元 9.cc替換一行 10.c替換從游標到行尾 11.yy表示拷貝行 12....

vi 命令詳解

vi 是visual edit 的縮寫 文字編輯器是所有計算機系統中最常用的一種工具。unix下的編輯器有ex,sed和vi等,其中,使用最為廣泛的是vi,而vi命令繁多。進入vi的命令。進入vi的命令 vi filename 開啟或新建檔案,並將游標置於第一行首 vi n filename 開啟檔...

vi 命令詳解

從shell中啟動視覺化編輯器 vi filename 指示shell啟動vi編輯器,並將引數filename傳給它。如果當前目前中存在該檔案,則vi編輯器將它解釋為要開啟的檔案 如果沒有該檔案,則vi編譯器建立新檔案 vi file1 file2 file3 shell傳遞3個引數給vi,vi將它...