Vim 有三种模式
{
命令模式
输入模式
底线命令模式
}
启动vim,即进入了命令模式在当前状态下,输入字符,则被视为输入了一个命令,而并非真正的输入了字符
常用命令:
i:切换到输入模式,以输入字符
x:删除当前光标所在处的字符
: 切换到底线命令模式,以最低的一行输入命令
如果想要输入更多命令,则需要依靠底线命令模式
输入模式:
字符按键以及shift组合:输入字符
底线命令模式:
w:保存文件
q:退出
ESC 键:可以随时退出底线命令模式和输入模式
Vim/Vi 工作模式:

创建文件:
:vi text.txt / :vi 文件夹/文件名.后缀名
插入内容之后,先按Esc退出当前模式,先输入底线命令,保存文件。
:wq / :x 保存并退出
:q 退出,适用于未修改的文件
:q! 强制退出,适用于修改文件后不保存退出
打开文件:
:vi filename(文件名).
命令模式下:
h:光标向左移动一个字符(相当于左键)
j:光标向下移动一个字符(相当于下键)
k:光标向上移动一个字符(相当于上键)
l:光标向右移动一个字符(相当于右键)
ctrl+f:屏幕向下翻一页
ctrl+b:屏幕向上翻一页
ctrl+d:屏幕向下翻半页
ctrl+u:屏幕向上翻半页
+:光标移动到下一行的第一个非空字符
- :光标移动到上一行的第一个非空字符
n空格:光标向当前行右移n个字符
0(数字0):光标移动到当前行的第一个字符,可以为空字符
$:光标移动到当前行的最后一个字符,可以为空字符
H:光标移动到当前屏幕最上方那一行的第一个非空字符
M:光标移动到当前屏幕最中间那一行的第一个非空字符
L:光标移动到当前屏幕最下方那一行的第一个非空字符
G:光标移动到该文章最后一行的第一个非空字符
l word:在光标之后查找word字符串
? word:在光标之前查找word字符串
: s/word1/word2/g:在光标当前行查找word1,并替换成word2
: n1,n2 s/word1/word2/g:在第n1行与第n2行之间查找word1,并替换成word2
: % s/word1/word2/g:整个文章查找word1,并替换成word2
: w:保存
: w[filename]:将编写后的数据保存到硬盘的另一个文件中
: n1,n2 w[filename]:将n1到n2行的内容保存到名为filename的文件中
: r[filename]:编写数据时, 读入另一个文件(filename)的数据,添加到光标所在行的下一行
: set nu:显示行号
: set nonu:取消行号
一般模式下的删除、复制、粘贴命令
x:向后删除一个字符(del键)
X:向前删除一个字符(退格键)
nx:向后删除n个字符
dd:删除当前行
V:删除当前行所有字符,保留行
ndd:删除光标所在行的向下n列(包括所在行)
dlG:删除光标所在行到第一行的所有数据
dG:删除光标所在行到最后一行的所有数据
yy:复制光标所在行
ylG:复制光标所在行到第一行的所有数据
yG:复制光标所在行到最后一行的所有数据
ynj:复制光标所在行向下n+1行
dnj:删除光标所在行向下n+1行
p:复制的数据粘贴在光标的下一行
J:将光标所在行与下一行的数据结合成一行
u:撤销


