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操作(常用)
. 重复上一个动作
相关推荐
原来是猿1 分钟前
Linux线程同步与互斥(三):POSIX信号量与环形队列生产者消费者模型
linux·运维·服务器·开发语言
ic爱吃蓝莓18 分钟前
破译 Linux 的“黑话”(常用命令解释)
linux·运维·服务器
charlie11451419120 分钟前
嵌入式Linux驱动开发(3)——内核模块机制 - Linux 的插件系统
linux·运维·开发语言·驱动开发·嵌入式硬件·学习
杨云龙UP33 分钟前
2000—CentOS Linux 7上部署Oracle 19c(19.3) RAC(RedHat/CentOS 7/8)
linux·运维·服务器·数据库·oracle·centos
java_logo42 分钟前
Docker 部署 Hermes Agent 完整指南(Windows / Linux 通用)
linux·windows·docker·hermes-agent部署·docker部署hermes·hermes-agent教程·hermes-agent文档
牛十二1 小时前
nacos2.4连接出错源码分析
java·linux·开发语言
抠脚学代码1 小时前
Linux开发-->驱动开发-->设备树
linux·驱动开发·设备树
喜欢吃燃面1 小时前
Linux 进程信号深度解析:从概念到产生机制
linux·开发语言·学习
埃伊蟹黄面2 小时前
应用层HTTP协议
linux·网络·网络协议·http
IMPYLH2 小时前
【无标题】
linux·运维·服务器·网络·bash