删除
- 单个字符
x: 删除当前光标后的字符
X: 删除当前光标前的字符
- 多个字符
dw: 删除单词,从光标起始处至下个单词字母开头处,包括中间的所有空格
D: 删除从光标起始处至行末
dd: 删除当前行,并跳转至下一行首
- 换行符
J: 删除当前行的换行符,并以空格拼接
移动
- 单个字符
h: 向左移动
j: 向下移动
k: 向上移动
l: 向右移动
- 单个词(连续的多个符号[,.:// …]算一个词)
w: 向右移动至下个词首
e: 向右移动至下个词末
b: 向左移动至上个词首
- 大词(单个换行符、连续的空格或Tab)
W: 向右移至下个词首
B: 向左移至上个词首
- 行内跳转
0: 光标移至行首
$: 光标移至行末
^: 光标移至行首(非空格)
- 页面跳转
gg: 光标跳转至文件起始行首
G: 光标跳转至文件末行首
H: 光标跳转至当前页起始行首(非空格)
M: 光标跳转至当前页中间行首(非空格)
L: 光标跳转至当前页末行首(非空格)
:$line_num: 光标跳转至输入的行号数
- 翻页
Ctrl+U: 向上翻半页
Ctrl+D: 向下翻半页
Ctrl+B: 向上翻一页
Ctrl+F: 向下翻一页
Ctrl+E: 屏幕向上滚动一行
Ctrl+Y: 屏幕向下滚动一行
插入
i: 光标前插入
a: 光标后插入
I: 行首插入
A: 行末插入
o: 当前行下方另起一行插入
O: 当前行上方另起一行插入
替换
r: 选中当前光标下的单个字符,只能替换单个字符后并返回命令模式
R: 选中当前光标下的字符,替换单个字符后保持插入状态
s: 删除光标下的单个字符后保持插入状态
S: 删除当前行后保持插入状态
C: 删除当前行(光标后),并保持输入状态
cw: 删除一个词,并保持输入状态(w可替换成其他命令,如:s、p等)
查找
- 全文
/{string}: 查找所需字符串,并跳转至光标后的第一个匹配处
*: 查找光标下的单词,并跳转至第一个匹配处
n: 跳转至下一个匹配处
N: 跳转至上一个匹配处
- 单行
t{character}: 在当前行光标起始处开始查找匹配的字符,光标跳转至第一个匹配项前
f{character}: 在当前行光标起始处后开始查找匹配的字符,光标跳转至第一个匹配项上
;: 跳转至下一个匹配项
,: 跳转至上一个匹配项,若为t查找结果则光标跳转至匹配项后
替换
:s /{search_str}/{replace_str}/g: 在当前行查找匹配项并替换
:%s /{search_str}/{replace_str}/g: 全文查找匹配项并替换
复制粘贴
- 复制
y: 复制已选文本区域
yy: 复制当前行
- 粘贴
p: 粘贴已选或刚删除的文本于光标后
P: 粘贴已选或刚删除的文本于光标前
其他
u: 撤销上一次操作
Ctrl+r: 重新执行上一次操作
.: 重复上次操作,.前面可以带上数字表示重复次数
v: 进入视图模式,默认选中当前光标字符,支持单字符选择
V: 进入视图模式,默认选中当前行,支持行选择
转载请注明来自广州玛斯顿影音有限公司,本文标题:《Vim基础命令整理 》