今天繼續給大家介紹Linux基礎知識,本文主要内容是Linux的VIM編輯器使用詳解。在沒有圖形化界面的系統中,熟練使用VIM編輯器可以幫助我們更好的檢視、修改配置檔案,今天我們就來學習在沒有滑鼠的情況下,VIM編輯器如何對檔案進行查找、替換、撤銷、快速定位等操作
一、VIM編輯器三種模式
VIM和VI是Linux系統運維人員經常使用的編輯器,可以讓我們在沒有圖形化界面的情況下進行文本的複制、删除、替換、查找等操作。VIM是VI的更新版編輯器,在功能和指令上與VI基本一緻,隻不過對部分腳本和檔案增添了高亮和背景,可以使得我們在檢視文本檔案時更加舒服,同時VIM對腳本檔案的高亮和染色可以使得我們在編輯腳本的時候更容易發現其中的錯誤。
VIM編輯器有三種模式:
1、指令模式 在指令模式下,可以進行複制、查找、删除、粘貼等操作
2、輸入模式 在輸入模式下,可以進行正常的文本輸入
3、末行模式 在末行模式下,可以儲存或退出,以及設定行号等操作
VIM在打開檔案後,預設處于指令模式,在指令模式下,按a、i、o等鍵可以進入輸入模式,按冒号鍵(必須是英文的冒号)可以進入末行模式,在輸入模式和末行模式下,按Esc鍵可以進入指令模式。
VIM編輯器三種模式及之間的轉換如圖所示:
二、VIM編輯器指令模式操作
VIM在指令模式下可以進行如下操作:
1、删除
輸入dd可以删除光标所在行,如果在dd指令前,輸入一個整數N,則可以删除N行。
2、複制
輸入yy可以複制光标所在行,如果在yy指令之前,輸入一個整數N,則可以複制N行。
3、粘貼
輸入p可以将之前删除的或者複制的内容粘貼在光标後面。粘貼結合上面的删除和複制可以實作剪切和複制
4、查找
先輸入字元“/”,在輸入要查找的字元,可以從前到後查找該字元,如果把“/”換成“?”,則可以從後向前查找指定字元。在進行查找字元時,輸入n可以跳轉到下一個字元,輸入N可以跳轉到上一個字元。
5、撤銷
輸入u可以撤銷上一步操作,類似于word的ctrl + z。
6、快速跳轉
輸入shift+g可以快速跳轉到末行,輸入gg可以快速跳轉到首行,快速跳轉到其他行請見下文中末行操作。
三、VIM末行模式操作
在末行模式下,vim可以進行儲存、退出顯示行号和替換等操作,具體如下:
1、不儲存退出
不儲存退出可以在VIM末行模式下如下指令:
:q
:q!
上面的指令一般在未對文檔進行修改時不儲存退出,下面的指令一般在對文檔進行修改後,但是不想儲存時退出,這裡的感歎号表示強制的意思。
2、儲存并退出
儲存退出可以在末行模式下如下指令:
其中w表示儲存的意思
3、顯示行号
如果想顯示行号,可以在末行模式下執行如下指令:
:set nu
顯示行号後的效果如下:
如果想不顯示行号,則可以執行如下指令:
:set nonu
4、快速跳轉
如果想要光标快速跳轉到第N行,則可以執行如下指令:
:N
5、替換
如果想要文本替換,則可以執行如下指令:
:s/boy/girl
:s/boy/girl/g
:%s/boy/girl/g
:2,5s/boy/girl/g
上述四條指令中,都表示将boy替換為girl,但是替換的範圍有所不同。第一條指令表示将光标所在行範圍的第一個,第二條表示将光标所在行的所有進行替換,第三個表示将全文中所有進行替換,第四個表示将全文1-4行的所有進行替換。