我的Linux版本:CentOS
發行版本:CentOS 8.1
Vi編輯器是所有Unix及Linux系統下標準的編輯器,類似於windows系統下的notepad(記事本),在Unix及Linux系統的任何版本,Vi編輯器是完全相同的,因此可以在其他任何介紹vi的地方都能進一步瞭解它,Vi也是Linux中最基本的文本編輯器,學會它後,我們將在Linux的世界裏暢行無阻,尤其是在終端中。
vi和vim都是Linux中的編輯器,不同的是,vim比較高級,可以視爲vi的升級版本。vi使用於文本編輯,但是vim更適用於coding(代碼編輯)。
1】.安裝Vim
Centos再帶Vi,所以要安裝Vim取代Vi
-
yum search vim
查找有哪些Vim包 -
which vim
已安裝Vim的地址 -
rpm -qf /usr/bin/vim
查看已安裝的版本 -
yum install vim-enhanced
安裝最新的Vim
打開Vim以及使用在後文
2】.vim的三種模式
1.Vim中存在三種模式:命令模式、編輯模式(輸入模式)、末行模式(尾行模式)。
-
命令模式:在該模式下是不能對文件直接編輯,可以輸入快捷鍵進行一些操作(刪除行,複製行,移動光標,粘貼等等)【打開文件之後默認進入的模式】;
-
編輯模式:在該模式下可以對文件的內容進行編輯;
-
末行模式:可以在末行輸入命令來對文件進行操作(搜索、替換、保存、退出、撤銷、高亮等等);
2.Vim的打開文件的方式:
#vim 文件路徑
; #作用:打開指定的文件#vim +數字 文件的路徑
; #作用:打開指定的文件,並且將光標移動到指定行#vim +/關鍵詞 文件的路徑
; #作用:打開指定的文件,並且高亮顯示關鍵詞#vim 文件路徑1 文件路徑2 文件路徑3
; #作用:同時打開多個文件
重點:先複製出一個/etc/passwd
文件,複製當前home目錄下(千萬不要在etc下直接修改!)
後續一切vim命令都是基於/root/passwd
文件進行操作。
退出方式:輸入:q
按下回車即可
3】.命令模式
該模式是打開文件的第一個看到的模式
1.光標移動
-
①光標移動到行首
按鍵:shift + 6 或 ^(T字母上面的6,不要按小鍵盤的6)
-
②光標移動到行尾
按鍵:shift + 4 或 $(R字母的左上角的4,不是小鍵盤的4)
-
③光標移動到首行
按鍵:gg
-
④光標移動到末行
按鍵:G
-
⑤翻屏
向上翻屏:按鍵ctrl + b (before) 或 PgUp
向下翻屏:按鍵ctrl + f (after) 或 PgDn
2.複製操作
-
①複製光標所在行
按鍵:yy
粘貼:在想要粘貼的地方按下p鍵 -
②以光標所在行爲準(包含當前行),向下複製指定的行數
按鍵:數字yy
-
③可視化複製
按鍵:ctrl + v
(可視塊)或V
(可視行)或v
(可視),然後按下↑↓←→
方向鍵來選中需要複製的區塊,按下y
鍵進行復制,最後按下p
鍵粘貼
3.撤銷/恢復
-
①撤銷:輸入
:u
(不屬於命令模式) 或者u
(undo) -
②恢復:
ctrl + r
恢復(取消)之前的撤銷操作
4.剪切/刪除
-
①剪切/刪除光標所在行
按鍵:dd
(刪除之後下一行上移)
注意:dd嚴格意義上說是剪切命令,但是如果剪切了不粘貼就是刪除的效果。 -
②剪切/刪除光標所在行爲準(包含當前行),向下刪除/剪切指定的行
按鍵:數字dd
(刪除之後下一行上移) -
③剪切/刪除光標所在的當前行之後的內容,但是刪除之後下一行不上移
按鍵:D
(刪除之後當前行會變成空白行) -
④可視化刪除
按鍵:ctrl + v
(可視塊)或V
(可視行)或v
(可視),↑↓←→
移動,按下D
表示刪除選中行,d
表示刪選中塊
5.光標的快速移動
-
①快速將光標移動到指定的行
按鍵:數字G -
②以當前光標爲準向上/向下移動n行
按鍵:數字↑,數字↓ -
③以當前光標爲準向左/向右移動n字符
按鍵:數字←,數字→ -
④末行模式下的快速移動方式:移動到指定的行
按鍵:輸入英文“:”,其後輸入行數數字,按下回車
4】.編輯模式
1.進入方式
-
i:
在光標所在字符前插入 -
a:
在光標所在字符後插入 -
o:
在光標所在行的下面另起一新行插入 -
I:
在光標所在行的首行開始插入(如果首行有空格則在空格之後插入) -
A:
在光標所在行的尾行開始插入 -
O:
在光標所在行的上面另起一新行開始插入 -
S:
刪除光標所在行並開始插入
2.退出方式
- 按下esc鍵
5】.末行模式
1.進入方式:
- 由命令模式進入,按下“
:
”或者“/
(表示查找)”即可進入
2.退出方式:
-
a. 按下esc
-
b. 連按2次esc鍵
-
c. 刪除末行全部輸入字符
3.使用命令
- ①保存操作(write)
輸入:“:w
” 保存文件
輸入:“:w 路徑
” 另存爲
- ②退出(quit)
輸入:“:q
” 退出文件
- ③保存並退出
輸入:“:wq
” 保存並且退出
- ④強制 (!)
輸入:“:q!
” 表示強制退出,剛纔做的修改操作不做保存
- vim還支持另外一個保存退出方法“
:x
”。(推薦)
①“
:x
”在文件沒有修改的情況下,表示直接退出,在文件修改的情況下表示保存並退出;
②如果文件沒有被修改,但是使用wq進行退出的話,則文件的修改時間會被更新;但是如果文件沒有被修改,使用x進行退出的話,則文件修改時間不會被更新的;主要是會混淆用戶對文件的修改時間的認定。
不要使用X,X表示對文件進行加密操作。
- ⑤調用外部命令
輸入:“:!外部命令
”
- ⑥搜索/查找
輸入:“/關鍵詞
”
在搜索結果中切換上/下一個結果:N/n
(next)
如果需要取消高亮,則需要輸入:“:nohl
”【no highlight】
- ⑦替換
:s/搜索的關鍵詞/新的內容
替換光標所在行的第一處符合條件的內容
:s/搜索的關鍵詞/新的內容/g
替換光標所在行的全部符合條件的內容
:%s/搜索的關鍵詞/新的內容
替換整個文檔中每行第一個符合條件的內容
:%s/搜索的關鍵詞/新的內容/g
替換整個文檔的符合條件的內容
%表示整個文件,g表示全局(global)
- ⑧顯示行號(臨時)
輸入:“:set nu
”[number]
如果想取消顯示,則輸入:“:set nonu
”
6】.模式間的切換
7】.vim的配置
Vim是一款編輯器,編輯器也是有配置文件的。
Vim配置有三種情況:
-
a. 在文件打開的時候在末行模式下輸入的配置(臨時的)
-
b. 個人配置文件(
~/.vimrc
,如果沒有可以自行新建) -
c. 全局配置文件(vim自帶,
/etc/vimrc
)
①新建好個人配置文件之後進入編輯
②在配置文件中進行配置
比如顯示行號:set nu
配置好之後vim打開文件就會永遠顯示行號
如果某個配置項,在個人配置文件與全局配置文件產生衝突的時候應該以誰爲準?
-
①先在全局的配置中設置不顯示行號,在個人的配置文件中設置顯示行號,觀察結果
最後顯示行號:說明以個人爲準 -
②先在全局中配置顯示行號,在個人中設置不顯示行號,觀察結果
. 全局配置文件(vim自帶,/etc/vimrc
)
①新建好個人配置文件之後進入編輯
②在配置文件中進行配置
比如顯示行號:set nu
配置好之後vim打開文件就會永遠顯示行號
如果某個配置項,在個人配置文件與全局配置文件產生衝突的時候應該以誰爲準?
-
①先在全局的配置中設置不顯示行號,在個人的配置文件中設置顯示行號,觀察結果
最後顯示行號:說明以個人爲準 -
②先在全局中配置顯示行號,在個人中設置不顯示行號,觀察結果
最後的顯示是不顯示行號,說明以個人爲準
完*