a 输入的内容插入当前光标的后面
A 输入的内容插入当前段落的段尾
i 输入的内容插入当前光标的前面
I 输入的内容插入当前段落的段首
o 在当前行的后面创建新的空白行
O 在当前行的前面创建新的空白行
#当不知道自己当前处于什么模式或者回到普通模式时,按Esc键返回普通模式。
在普通模式下输入 :即可进入命令模式。
h 光标向左移动一位
j 光标向下移动一位
k 光标向上移动一位
i 光标向右移动一位
gg 移动光标至文件首行
G 移动光标至文件末尾
nG 移动光标至第n行
^ 光标移至当前行的首字符
$ 光标移动当前行的尾字符
fx 光标移动至当前行的下一个x字符处
Fx 光标移动至当前行的上一个x字符处
W 光标向右移动一个单词
nW 光标向右移动n个单词
b 光标向左移动一个单词
nb 光标向左移动nb个单词
x 删除光标当前字符
dd 删除一行
ndd 删除n行
d$ 删除光标至行尾的内容
j 删除换行符,可以将两行和为一行
u 撤销上一步操作,可以多次使用,如 uu 表示撤销两步操作
rx 将光标当前字符替换为x
yy 复制当前行
p 黏贴至当前行之后
P 黏贴至当前行之前
/ 后面跟要查找的字符,按n查看上一匹配,按N查看下一匹配。
:s/root/admin/ 将光标当前行中第一个出现的root替换为admin,没有则不替换
:s/root/admin/g 将光标当前行中所有的root替换为admin
:3,5 s/sbin/bin/g 将第三行至第五行之间的所有sbin替换为bin
:% s/nologin/fault/g 将所有行的nologin替换为fault
:q! 不保存退出
:wq 保存退出
:x 保存退出
:w 保存
:b.txt 另存为b.txt
:set number 或 set nu 显示行号
:set ignorecase 忽略大小写
- 多窗口编辑:
:split 多窗口编辑
ctrl+w+h表示跳转左边一个窗口
ctrl+w+l表示跳转至右一个窗口
ctrl+w+j表示跳转至上面一个窗口
ctrl+w+k表示跳转至下面一个窗口
在命令模式下输入 :close可关闭当前窗口
在命令模式下输入 :split x.txt,此命令会分个窗口并打开新文件。
默认的 :split会水平分个窗口 ,垂直分割窗口可以使用 :vsplit
- 执行shell命令:
使用vim编辑过程中,如需执行一条shell命令切不想退出vim编辑器,
可以通过 :!{命令} 的方式实现。
- 自动补齐:
比如foot在前面行中出现过了,需要再次输入时,只需要输入fo然后按快捷键ctrl+N就可以自动补齐了