vi編輯器簡介
配置檔案是 linux 作業系統的顯著特徵之一,其作用有點類似於 windows 作業系統中的
登錄檔,只不過登錄檔是集中管理,而配置檔案採用了分散的自由管理方式。本節將學習如
何使用 linux 字元操作介面中的文字編輯器——vi,以便更好地管理和維護系統中的各種配
置檔案。
vi 是乙個功能強大的全螢幕文字編輯工具,一直以來都作為類 unix 作業系統的
預設文字編輯器。vim 是 vi 文字編輯器(簡稱 vi 編輯器)的增強版本,在 vi 編輯器的基
礎上擴充套件了很多實用的功能,但是習慣上也將 vim 稱為 vi。
1、 vi 編輯器的工作模式
vi 編輯器是工作在字元終端環境下的全螢幕編輯器,因此編輯介面相對比較簡單,沒
有為使用者提供滑鼠操作和選單系統,而是通過按鍵命令實現相應的編輯和操作功能。在 vi
編輯介面中可以使用三種不同的工作模式,即命令模式、輸入模式和末行模式,在不同的模
式中能夠對檔案進行的操作也不相同。
命令模式:啟動 vi 編輯器後預設進入命令模式。該模式中主要完成如游標移動、
字串查詢,以及刪除、複製、貼上檔案內容等相關操作。
輸入模式:該模式中主要的操作就是錄入檔案內容,可以對文字檔案正文進行修
改或新增新的內容。處於輸入模式時,vi 編輯器的最後一行會出現「-- insert --」
的狀態提示資訊。
末行模式:該模式中可以設定 vi 編輯環境、儲存檔案、退出編輯器,以及對檔案
內容進行查詢、替換等操作。處於末行模式時,vi 編輯器的最後一行會出現
冒號「:」提示符。
命令模式、輸入模式和末行模式是 vi 編輯環境的三種狀態,通過不同的按鍵操作可以
在不同的模式間進行切換。例如,從命令模式按:(冒號)鍵可以進入末行模式,按 a、i、
o 等鍵可以進入輸入模式;在輸入模式、末行模式均可按 esc 鍵返回命令模式。
認識了 vi 編輯器的不同編輯模式(狀態)以後,下面分別介紹在命令模式、末行模式
中的常見操作方法(輸入模式用於錄入文字內容,不做特別介紹)。
2、 命令模式中的基本操作
在學習 vi 編輯器的基本操作時,建議學員複製乙個內容較多的系統配置檔案進行練習,
而不要直接去修改系統檔案,以免發生失誤造成系統故障。
在 vi 編輯器的命令模式中,可以輸入特定的按鍵(稱為 vi 操作命令,注意區別於 linux
作業系統命令)進行操作,主要包括模式切換、游標移動、複製、刪除、貼上、檔案內容查
找及儲存和退出等操作,這裡只介紹一些最基本且常用的按鍵命令。
1.模式切換
在命令模式中,按 a、i、o 等鍵可以快速切換至輸入模式,同時確定插入點的方式和位
置,以便錄入檔案內容。需要返回命令模式時,按 esc 鍵即可。常見的幾個模式切換鍵及其
作用如下。
a:在當前游標位置之後插入內容。
a:在游標所在行的末尾(行尾)插入內容。
i:在當前游標位置之前插入內容。
i:在游標所在行的開頭(行首)插入內容。
o:在游標所在行的後面插入乙個新行。
o:在游標所在行的前面插入乙個新行。
2.移動游標
游標方向的移動。直接按↑、↓、←、→四個方向鍵完成相應的游標移動。
按 page down 鍵或 ctrl+f 組合鍵向下翻動一整頁內容。
按 page up 鍵或 ctrl+b 組合鍵向上翻動一整頁內容。
行內快速跳轉。
按 home 鍵或^鍵、數字 0 鍵將游標快速跳轉到本行的行首。
按 end 鍵或$鍵將游標快速跳轉到本行的行尾。
在上述按鍵操作中,page down、page up、home、end 鍵及方向鍵同樣也可在 vi 的輸
入模式中使用。
使用按鍵命令 1g 或者 gg 可跳轉到檔案內容的第 1 行。
使用按鍵命令 g 可跳轉到檔案的最後一行。
使用按鍵命令#g 可跳轉到檔案中的第#行(其中「#」號用具體數字替換)。
為了便於檢視行間跳轉效果,這裡先學習如何在 vi 編輯器中顯示行號。只要切換到末
行模式並執行如下的「:set nu」命令即可顯示行號,執行「:set nonu」命令可以取消顯示
行號。
3.複製、貼上和刪除
按 x 鍵或 delete 鍵刪除游標處的單個字元。
使用按鍵命令 dd 刪除當前游標所在行,使用#dd 的形式還可以刪除從游標處
開始的#行內容(其中「#」號用具體數字替換)。
使用按鍵命令 d^刪除當前游標之前到行首的所有字元。
使用按鍵命令 d$刪除當前游標處到行尾的所有字元。
複製操作。使用按鍵命令 yy 複製當前行整行的內容到剪貼簿,使用#yy 的形式還
可以複製從游標處開始的#行內容(其中「#」號用具體數字替換)。複製的內容需
要貼上後才能使用。
貼上操作。在 vi 編輯器中,前一次被刪除或複製的內容將會儲存到剪下板緩衝區
中,按 p 鍵即可將緩衝區中的內容貼上到游標位置處之後,按 p 鍵則會貼上到游標
位置處之前。
4.查詢檔案內容
在命令模式中,按/鍵後可以輸入指定的字串,從當前游標處開始向後進行查詢(按?
鍵則向前查詢)。完成查詢後可以按n、n鍵在不同的查詢結果中進行選擇。
5.撤銷編輯及儲存和退出
在對檔案內容進行編輯時,有時候需要對一些失誤的編輯操作進行撤銷,這時可以使用
按鍵命令 u、u 鍵。其中,u 鍵命令用於取消最近一次的操作,並恢復操作結果,可以多次
重複按 u 鍵恢復已進行的多步操作;u 鍵命令用於取消對當前行所做的所有編輯。
當需要儲存當前的檔案內容並退出 vi 編輯器時,可以使用按鍵命令 zz。
2.4.3 末行模式中的基本操作
在命令模式中按:鍵可以切換到末行模式,vi 編輯器的最後一行中將顯示「:」提示符,
使用者可以在該提示符後輸入特定的末行命令,完成如儲存檔案、退出編輯器、開啟新檔案、
讀取其他檔案內容及字串替換等豐富的功能操作。
1.儲存檔案及退出 vi 編輯器
儲存檔案。對檔案內容進行修改並確認以後,需要執行如下的「:w」命令進行儲存。
退出編輯器。需要退出 vi 編輯器時,可以執行「:q」命令。若檔案內容已經修改
卻沒有儲存,則僅使用「:q」命令將無法成功退出,這時需要使用如下的「:q!」
命令強行退出(不儲存即退出)。
:q!
儲存並退出。既要儲存檔案又要退出 vi 編輯器可以使用一條末行命令「:wq」或「:x」
實現,其效果與命令模式中的 zz 命令相同。
2.開啟新檔案或讀入其他檔案內容
開啟新的檔案進行編輯。在當前 vi 編輯器中,執行「:e 新的檔案」形式的末行命
令可以編輯(edit)新檔案
在當前檔案中讀入其他檔案內容。執行「:r 其他檔案」形式的末行命令可以讀入
(read)其他檔案中的內容,並將其複製到當前游標所在位置。
3.替換檔案內容
在 vi 編輯器的末行模式中,能夠將檔案中特定的字串替換成新的內容,當需要大批
量修改同一內容時,使用替換功能將大大提高編輯效率。使用替換功能時的末行命令格式如
下: : [替換範圍] sub /舊的內容/新的內容[/g]
在上述替換格式中,主要關鍵字為 sub(substitute,替換),也可以簡寫為 s。替換範
圍是可選部分,預設時只對當前行內的內容進行替換,一般可以表示為以下兩種形式。
%:在整個檔案內容中進行查詢並替換。
n,m:在指定行數範圍內的檔案內容中進行查詢並替換。
替換格式中最末尾的「/g」部分也是可選內容,表示對替換範圍內每一行的所有匹配結
果都進行替換,省略「/g」時將只替換每行中的第乙個匹配結果。
vi文字編輯器
一 操作模式 1 三種操作模式 命令模式 command mode 插入模式 input mode 末行模式 last line mode 2 執行與結束 在系統提示字元 如 下敲入vi 文件名稱 vi 可以自動幫你載入所要編輯的檔案或是開啟乙個新 檔案 如果該檔案不存在或缺少檔名 進入 vi 後螢...
VI文字編輯器
1.工作模式 2.命令列模式功能鍵 yy 複製當前游標所在行 n yy n為數字,複製當前游標開始的n行 p 貼上複製的內容到游標所在行 dd 刪除當前游標所在行 n dd 刪除游標所在行開始的n行 字串 查詢游標之後的字串 g 游標移動到檔案尾 u 取消前乙個動作 h 游標左移乙個字元 j 游標下...
vi文字編輯器
vi是乙個強大的常用的文字編輯器,vim是高階版的vi vi test.txt 進入vi的一般模式,如果test.txt檔案存在則開啟,如果不存在則會建立 例1 查詢字母a 輸入 輸入 a 即 a 例2 查詢空格 輸入 輸入 n 即 n 例3 查詢響應時間大於400的,格式為cos 4xx 運用正規...