vi和vim
vi
和 vim
都是在 Linux 系統(tǒng)中的文本編輯器。vim
實際上是 vi
的增強版,提供了更多的功能和改進。
-
vi:
-
vi
是一個經(jīng)典的文本編輯器,幾乎在每個 Linux 發(fā)行版中都預裝了。 -
vi
的使用可以分為三個主要模式:命令模式(Command mode)、插入模式(Insert mode)和底行模式(Ex mode)。 - 命令模式下可以執(zhí)行文件編輯、搜索、復制粘貼等操作。
- 插入模式下可以直接輸入和編輯文本內容。
- 底行模式用于保存文件、退出
vi
等高級操作。 - 例如,使用
vi filename
命令打開一個文件,在命令模式下按下 “i” 進入插入模式,進行文本編輯,然后按下 Esc 鍵回到命令模式,在命令模式下輸入 “:wq” 并按回車鍵保存并退出。
-
-
vim:
-
vim
(Vi IMproved)是對vi
的增強版本,具有更多的功能和改進。 -
vim
擁有vi
的所有功能,并添加了更多的功能和定制選項。 -
vim
提供了語法高亮、多級撤銷、分屏編輯、代碼補全等功能,以及大量的插件和擴展性。 - 與
vi
相比,vim
的學習曲線略高,但它為用戶提供了更強大和靈活的編輯環(huán)境。 - 使用
vim
的基本操作與vi
類似,同時還有更多命令和選項可用。
-
vi 命令模式
在 vi 的命令模式下,常用的一些快捷鍵可以提高編輯效率。以下是幾個常用的 vi 命令模式快捷鍵:
-
移動光標:
-
h
:將光標左移一個字符。 -
j
:將光標下移一行。 -
k
:將光標上移一行。 -
l
:將光標右移一個字符。
-
-
文本編輯:
-
i
:在當前光標位置之前插入文本。 -
a
:在當前光標位置之后插入文本。 -
o
:在當前行之后插入新行,并進入插入模式。 -
dd
:刪除當前行。 -
yy
:復制當前行。 -
p
:粘貼已復制或刪除的文本。
-
-
撤銷和重做:
-
u
:撤銷上一次操作。 -
Ctrl + r
:重做被撤銷的操作。
-
-
搜索與替換:
-
/keyword
:向后搜索指定關鍵字。 -
?keyword
:向前搜索指定關鍵字。 -
n
:跳到下一個匹配項。 -
N
:跳到上一個匹配項。 -
:s/old/new
:在當前行替換第一個匹配項。 -
:s/old/new/g
:在當前行替換所有匹配項。 -
:%s/old/new/g
:在整個文件中替換所有匹配項。
-
-
保存和退出:
-
:w
:保存文件但不退出 vi。 -
:q
:退出 vi(僅在沒有修改的情況下)。 -
:wq
:保存文件并退出 vi。 -
:q!
:強制退出 vi,丟棄所有修改。
-
vi 插入模式
在vi中,輸入模式用于插入和編輯文本。以下是進入輸入模式的方法:
-
插入模式:在光標位置之前插入文本。
-
i
:在當前光標位置之前開始插入文本。 -
a
:在當前光標位置之后開始插入文本。 -
I
:在當前行的第一個非空字符之前開始插入文本。 -
A
:在當前行的末尾開始插入文本。
-
-
追加模式:在光標位置之后追加文本。
-
a
:在當前光標位置之后開始追加文本。 -
A
:在當前行的末尾開始追加文本。
-
-
打開新行:
-
o
:在當前行之后插入新行,并進入插入模式。 -
O
:在當前行之前插入新行,并進入插入模式。
-
-
替換模式:替換光標所在位置的字符。
-
r
:替換光標所在位置的字符。 -
R
:一直處于替換模式,可以連續(xù)替換多個字符。
-
-
進入輸入模式的其他方式:
-
s
:刪除光標所在位置的字符并進入插入模式。 -
S
:刪除整行并進入插入模式。 -
C
:刪除從光標位置到行尾的內容并進入插入模式。
-
輸入模式中可以進行文本編輯,并通過快捷鍵切換到命令模式或者執(zhí)行保存退出等操作。要注意,在輸入模式下,按下 Esc
鍵可以返回到命令模式。
vi 底行模式
Vi編輯器中的底行模式(Command-line Mode)用于執(zhí)行一些命令和操作。在底行模式下,可以輸入各種命令來執(zhí)行編輯、搜索、保存和退出等操作。以下是一些常用的Vi底行模式命令:
-
保存和退出:
-
:w
:保存文件但不退出Vi。 -
:wq
:保存文件并退出Vi。 -
:x
或ZZ
:保存文件并退出Vi(只有在文件有修改的情況下才會保存)。 -
:q
:退出Vi(如果有未保存的修改,則無法退出)。 -
:q!
:強制退出Vi,放棄所有未保存的修改。
-
-
搜索和替換:
-
:/pattern
:向后搜索指定的Pattern。 -
:?pattern
:向前搜索指定的Pattern。 -
n
:跳到下一個匹配項。 -
N
:跳到上一個匹配項。 -
:s/old/new
:在當前行替換第一個匹配項。 -
:s/old/new/g
:在當前行替換所有匹配項。 -
:%s/old/new/g
:在全文中替換所有匹配項。
-
-
文本編輯命令:
-
:delete
或:d
:刪除當前行。 -
:copy
或:co
:復制當前行或指定范圍的行。 -
:move
或:m
:移動當前行或指定范圍的行。 -
:join
或:j
:合并當前行與下一行。
-
-
顯示和設置行號:文章來源:http://www.zghlxwxcb.cn/news/detail-621593.html
-
:set number
或:set nu
:顯示行號。 -
:set nonumber
或:set nonu
:不顯示行號。
-
-
執(zhí)行外部命令:文章來源地址http://www.zghlxwxcb.cn/news/detail-621593.html
-
:!command
:執(zhí)行Shell命令,并返回Vi編輯器。
-
到了這里,關于Linux vi/vim以及三種模式常用快捷鍵的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!