-
vi编辑器三种模式
命令行模式(最开始进入时为该模式)
插入模式(编辑模式)
底行模式(从插入模式进入底行模式需esc回到命令行模式)
-
模式切换命令
1.由命令行模式进入插入模式
a(从当前光标之后的位置开始i插入字符) A(光标跳转到行尾开始插入)
i(从当前光标的位置开始插入字符) I(光标跳转到行首开始插入)
o(在光标下方的位置插入新的一行,光标移动到新行首) O(在光标上方的位置插入新的一行,光标移动到新行行首)
2.由插入模式进入命令行模式
esc
3. :!可在顶层模式中执行外部命令(例如查看当前文件位置::! pwd)
-
vi复制粘贴命令(命令行模式)
复制剪切命令:
nx(删除从光标位置开始的连续n个字符并复制到剪贴板)
ndd(删除从光标位置开始的连续n行并复制到剪贴板)
nyy(复制从光标位置开始的连续n行到剪贴板)
粘贴命令:
p(粘贴到光标下一行)
P(粘贴到光标的上一行)
u可取消上一次操作
-
vi保存和退出命令
保存命令
:w(保存文件,但不退出)
:wq(保存并退出)与:x命令相同
:w file (另存为file给出的文件名)
:r file(引入file文件的内容)
退出命令:
:q(退出没有修改的文件,若修改未保存,则该命令无效)
:q!(强制退出,不保存修改的部分)
-
vi高级命令
光标命令
h j k l 光标左移 光标下移 光标上移 光标右移 查看命令
/ 加查找的字符串(n可向下继续查找,N可向上继续查找)
替换命令
:s/str1/str2/(在当前行将str1替换为str2)
:.,$/str1/str2/g(从第一行到最后一行将所有str1替换为str2) 注:g表示替换所有
:%/str1/str2/g(全文替换)
复制剪切命令
y0(将光标到行首的字符复制到剪贴板)
y$(将光标到行尾的字符复制到剪贴板)