VIM编辑器常用模式有:

普通模式:实现基本的光标移动与大量的快捷键操作 (vim编辑器默认模式)

插入模式:实现文本的基本编辑功能

命令模式:输入特定的指令实现特定的功能


普通模式:

在插入模式或者命令模式中可以按ESC键来退回到普通模式


命令模式:

在普通模式下输入":"    即可进入到命令模式,在“:”后输入指令,即可实现特定的功能



普通模式:移动光标的操作
G
将光标移动到文件的最后一行
gg
将光标移动到文件的第一行,等价于 1gg 1G
0 ^
数字 0 ,从光标所在位置移动到当前行的结尾
$
从光标所在位置将光标移动到当前行的结尾
n<Enter>
n 为数字, <Enter> 为回车键,将光标从当前位置向下移动 n
ngg
N 为数字,移动到文件的第 n 行,如 11gg 可移动到 11 行,可配合“ :set nu ”查看,同 nG
H
光标移动到当前窗口的最上方哪一行
M
光标移动到当前窗口的中间哪一行
L
光标移动到当前窗口的最下方哪一行
h
光标向左移动一个字符
j
光标向下移动一个字符
k
光标向上移动一个字符
l
光标向右移动一个字符
普通模式:搜索与替换操作
/oyb
从光标位置开始,向下寻找名为 oyb 的字符串
?oyb
从光标位置开始,向上寻找名为 oyb 的字符串
n
从光标位置开始,向下重复前一个搜索的动作
N
从光标位置开始,向上重复前一个搜索的动作
:%s/A/B/g
把符合 A 的内容全部替换为 B ,斜线分割,可以用 @ # 等替代
:n1,n2s/A/B/g
n1 n2 为数字,在第 n1 行和 n2 行间寻找 A ,用 B 替换
普通模式:复制、粘贴、删除等操作
yy
复制光标所在的当前行
nyy
N 为数字,复制光标开始向下共 n
p/P
P 将已复制的数据粘贴到光标的下一行, P 则为粘贴到光标的上一行
dd
删除光标所在的当前行
ndd
n 为数字,删除从光标开始向下共 n
d$
删除光标至行尾的内容
x
删除光标当前字符
J
删除换行符,可以将两行合并为一行
rn
将光标当前字符替换为 n n 为任何键盘单个输入)
u
恢复(回滚)前一个执行过操作, 可以多次使用 uu 表示撤销两步操作
进入编辑模式
i
后续输入的内容将插入至当前光标的前面
后续输入的内容将插入至当前光标的段首
a
后续输入的内容将插入至当前光标的后面
A
后续输入的内容将插入至当前段落的段尾
o
在当前行的后面创建新的空白行
O
在当前行的前面创建新的空白行
Esc
退出编辑模式,回到普通模式中
进入命令模式
:wq
退出并保存
:wq!
退出并强制保存,“!”为强制的意思
:q!
强制退出,不保存
:n1,n2 w filename
n 1 n2 为数字 , n1 行到 n2 行的内容保存成 filename 这个文件
:n1,n2 co  n3
n 1 n2 为数字 , n1 行到 n2 行的内容拷贝到 n3 位置下
:n1,n2 m  n3
n 1 n2 为数字 , n1 行到 n2 行的内容移动至 n3 位置下
:!command
暂时离开 vi 到命令行模式下执行 command 的显示结果!例如 :! ls /etc
:set nu
显示行号
:set nonu
set nu 相反,取消行号
:vs  filename
垂直分屏显示,同时显示当前文件合 filename 对应文件的内容
:sp  filename
水平分屏显示,同时显示当前文件合 filename 对应文件的内容
I+#+Esc
在可视化模块下( ctrl+v , 一次性注释所选的多行,取消注释可用 :n1,n2s/#//g, # 号可以换成别的操作,列如 tab 键,这样就是批量缩进
Del
在可视化模块下( ctrl+v , 一次性删除所选内容
r
在可视化模块下( ctrl+v , 一次性替换所选内容
  

Logo

更多推荐