Linux運維應(yīng)該知道的Vi/Vim 編輯器使用命令
今天馬哥教育要跟大家分享的文章是關(guān)于Linux運維應(yīng)該知道的Vi/Vim 編輯器使用命令。VI 編輯器是一個基于命令行的、功能強大的文本編輯器,最早為 Unix 系統(tǒng)開發(fā),后來也被移植到許多的 Unix 和 Linux 發(fā)行版上。在 Linux 上還存在著另一個 VI 編輯器的高階版本 —— VIM(也被稱作 VI IMproved)。VIM 只是在 VI 已經(jīng)很強的功能上添加了更多的功能, 想要學(xué)習Linux和正在Linux入門的小伙伴,一定要好好看看這篇文章啦!
這些功能有:
· 支持更多 Linux 發(fā)行版,
· 支持多種編程語言,包括 Python、c++、perl 等語言的代碼塊折疊,語法高亮,
· 支持通過多種網(wǎng)絡(luò)協(xié)議,包括 http、ssh 等編輯文件,
· 支持編輯壓縮歸檔中的文件,
· 支持分屏同時編輯多個文件。
今天小編就要為大家介紹一下 VI/VIM 的命令以及選項。在本篇文章中我們使用 VI 來舉例,但所有的命令都可以被用于 VIM。首先我們先介紹 VI 編輯器的兩種模式。
1、命令模式
命令模式下,我們可以執(zhí)行保存文件、在 VI 內(nèi)運行命令、復(fù)制/剪切/粘貼操作,以及查找/替換等任務(wù)。當我們處于插入模式時,我們可以按下 Escape(Esc)鍵返回命令模式
2、插入模式
在插入模式下,我們可以鍵入文件內(nèi)容。在命令模式下按下 i 進入插入模式。
下面我們一起來看一下編輯器的使用命令有哪些吧!
一.創(chuàng)建文件
我們可以通過下述命令建立一個文件(LCTT 譯注:如果該文件存在,則編輯已有文件):
$ vi filename
一旦該文件被創(chuàng)建或者打開,我們首先進入命令模式,我們需要進入輸入模式以在文件中輸入內(nèi)容。我們通過前文已經(jīng)大致上了解這兩種模式。
二.退出 Vi
如果是想從插入模式中退出,我們首先需要按下 Esc 鍵進入命令模式。接下來我們可以根據(jù)不同的需要分別使用兩種命令退出 Vi。
1. 不保存退出 – 在命令模式中輸入 :q!
2. 保存并退出 – 在命令模式中輸入 :wq
三.移動光標
下面我們來討論下那些在命令模式中移動光標的命令和選項:
1. k 將光標上移一行
2. j 將光標下移一行
3. h 將光標左移一個字母
4. l 將光標右移一個字母注意:如果你想通過一個命令上移或下移多行,或者左移、右移多個字母,你可以使用 4k 或者 5j,這兩條命令會分別上移 4 行或者右移 5 個字母。
5. 0 將光標移動到該行行首
6. $ 將光標移動到該行行尾
7. nG 將光標移動到第 n 行
8. G 將光標移動到文件的最后一行
9. { 將光標移動到上一段
10. } 將光標移動到下一段
除此之外還有一些命令可以用于控制光標的移動,但上述列出的這些命令應(yīng)該就能應(yīng)付日常工作所需。
四.編輯文本
這部分會列出一些用于命令模式的命令,可以進入插入模式來編輯當前文件
1. i 在光標所在行的位置插入內(nèi)容
2. I 在光標所在行的行首插入內(nèi)容
3. a 在當前光標之后插入內(nèi)容
4. A 在當前光標之后插入內(nèi)容
5. o 在當前光標所在行之前添加一行
6. O 在當前光標所在行之后添加一行
五.刪除文本
以下的這些命令都只能在命令模式下使用,所以首先需要按下 Esc 進入命令模式,如果你正處于插入模式:
1. dd 刪除光標所在的整行內(nèi)容,可以在 dd 前增加數(shù)字,比如 2dd 可以刪除從光標所在行開始的兩行
2. d$ 刪除從光標所在行開始的所有行
3. d^ 刪除從文件開始直到光標所在行的所有行
4. dw 刪除從光標所在位置直到下一個詞開始的所有內(nèi)容
六.復(fù)制與粘貼
1. yy 復(fù)制當前行,在 yy 前添加數(shù)字可以復(fù)制多行
2. p 在光標之后粘貼復(fù)制行
3. P 在光標之前粘貼復(fù)制行
以上就是馬哥教育今天為大家分享的關(guān)于Linux運維應(yīng)該知道的Vi/Vim 編輯器使用命令的文章,文章中主要介紹了一些可以在 VI/VIM 編輯器上使用的基本命令。希望本篇文章能夠?qū)φ趶氖翷inux相關(guān)工作的小伙伴們有所幫助。想要了解更多Linux相關(guān)知識記得關(guān)注馬哥教育官網(wǎng)。最后祝愿小伙伴們工作順利哦!
英文:LinuxTechLab,翻譯:Linux中國/Fan Li
Linux.cn/article-9323-1.html