vim常用键位总结

1、移动光标

按键 作用
h 光标向左移动一个字符
j 光标向下移动一个字符
k 光标向上移动一个字符
l 光标向右移动一个字符
Ctrl + fPage Down 屏幕向下移动一页(常用)
Ctrl + bPage Up 屏幕向上移动一页(常用)
Ctrl + d 屏幕向下移动半页
Ctrl + u 屏幕向上移动半页
+ 光标移动到非空格符的下一行
- 光标移动到非空格符的上一行
<num> + Space num表示数字,按下数字后再按空格,光标会向右移动这一行的num个字符
0Home 移动到当前行第一个字符处(常用)
$End 移动到当前行最后一个字符处(常用)
H 光标移动到这个屏幕最上方一行的第一个字符处
M 光标移动到这个屏幕中心一行的第一个字符处
L 光标移动到这个屏幕最下方一行的第一个字符处
G 移动到当前文件的最后一行(常用)
<num> + G num表示数字,配合G使用将光标移动到文件指定行
gg 移动到当前文件的第一行(常用)
<num> + Enter num表示数字,按下数字后再按回车,光标向下移动num

2、搜索替换

按键 作用
/word 向下查找名称为 word 的字符串(常用)
?word 向上查找名称为 word 的字符串(常用)
n 重复前一个搜索动作(常用)
N 反向重复前一个搜索动作(常用)
:<num1>,<num2>s/word1/word2/g num1行与num2行之间寻找 word1 字符串,并将该字符串替换为 word2 字符串。使用$%替代num2时意味查询至文件最后一行;命令中的g表示替换动作无需用户确认,若需要用户确认则使用gc代替g(常用)

3、删除、复制和粘贴

按键 作用
xX x表示向后删除一个字符,X表示向前删除一个字符(常用)
<num> + x<num> + X num为数字,组合xX使用表示向后或向前删除num个字符
dd 剪切光标所在位置的一整行(常用)
<num> + dd num为数字,组合dd使用表示剪切光标所在行的向下num行(常用)
d1G 删除光标所在行到第一行的所有数据
dG 删除光标所在行到最后一行的所有数据
d$ 删除光标所在位置到该行最后一个字符的所有数据
d0 删除光标所在位置到该行最前面一个字符的所有数据
yy 复制光标所在位置的一整行(常用)
<num> + yy num为数字,组合yy使用表示复制光标所在行的向下num行(常用)
y1G 复制光标所在行到第一行的所有数据
yG 复制光标所在行到最后一行的所有数据
y$ 复制光标所在位置到该行最后一个字符的所有数据
y0 复制光标所在位置到该行最前面一个字符的所有数据
pP p表示向光标下一行粘贴已复制数据,P表示向光标上一行粘贴已复制数据。该操作同样可与<num>组合,例如<num> + p(常用)
J 将光标所在行与下一行数据结合成同一行
c 重复删除多个数据,例如向下删除10行为10cj,其中j代表 join
u 复原前一个动作(常用)
Ctrl + r 撤销上一个u操作(常用)
. 重复上一个动作
相关推荐
-水火-14 分钟前
【yocto】Yocto Project 核心:深入了解.bbclass文件
linux·yocto·.bbclass
愚润求学15 分钟前
【Linux】Socket编程——TCP版
linux·运维·服务器·c++·网络协议·tcp/ip
软件测试大叔16 分钟前
ubuntu替换源为阿里源(修改ubuntu.source文件)
linux·运维·ubuntu
wheeldown1 小时前
【Linux】深度学习GCC的编译流程
linux·运维·服务器
deeper_wind10 小时前
k8s-容器化部署论坛和商城服务(小白的“升级打怪”成长之路)
linux·运维·容器·kubernetes
勇往直前plus11 小时前
VMware centos磁盘容量扩容教程
linux·运维·centos
政安晨12 小时前
Ubuntu 服务器无法 ping 通网站域名的问题解决备忘 ——通常与网络配置有关(DNS解析)
linux·运维·服务器·ubuntu·ping·esp32编译服务器·dns域名解析
路溪非溪13 小时前
嵌入式Linux驱动开发杂项总结
linux·运维·驱动开发
Neolock14 小时前
Linux应急响应一般思路(三)
linux·web安全·应急响应
被遗忘的旋律.15 小时前
Linux驱动开发笔记(七)——并发与竞争(上)——原子操作
linux·驱动开发·笔记