Vim 常用快捷键大全:跳转、编辑、查找替换全解析

摘要:

Vim 是一款非常强大的文本编辑器,许多程序员和系统管理员都离不开它。

本文详细介绍了 Vim 编辑器中的常用快捷键和命令,从基本模式、光标移动、编辑操作到查找替换,再到文件保存等常用操作,帮助你快速上手并提升编辑效率。无论你是 Vim 新手还是资深用户,都能从中找到提升效率的技巧。阅读本文后,你将熟悉 Vim 的各种操作,让编程、写作变得更加高效!

下面列出了一些常用命令和操作:

1. 基本模式介绍

Vim 有三种主要模式:

普通模式(Normal Mode):默认模式,用于执行命令。

插入模式(Insert Mode):编辑文本,用 i、I、a、A 等命令进入。

命令模式(Command-line Mode):用于保存、退出、搜索等操作,进入方法是按 :。

了解这些模式对于高效使用 Vim 至关重要。


2. 光标移动

在普通模式下,可以使用以下快捷键来快速移动光标:

跳转到文件开头

• gg:将光标移动到文件的第一行。

• 1G:同样效果,移动到第一行。

跳转到文件末尾

• G:将光标移动到文件的最后一行。

按页滚动

• Ctrl+f:向前翻页。

• Ctrl+b:向后翻页。

按行移动

• j:向下移动一行。

• k:向上移动一行。

• h:向左移动一个字符。

• l:向右移动一个字符。

快速跳转到指定行

• 输入 :行号 后按 Enter,例如 :50 跳到第 50 行。


3. 编辑操作

3.1 进入插入模式

• i:在当前光标位置前进入插入模式。

• I:在当前行的开头进入插入模式。

• a:在当前光标位置后进入插入模式。

• A:在当前行末尾进入插入模式。

• o:在当前行下面新建一行并进入插入模式。

• O:在当前行上面新建一行并进入插入模式。

3.2 删除操作

• x:删除当前光标处的字符。

• dw:删除从当前光标到下一个单词的开头。

• dd:删除当前整行。

• D:删除从当前光标到行末的内容。

3.3 复制与粘贴

• yy(或 Y):复制当前整行。

• p:在当前光标后粘贴。

• P:在当前光标前粘贴。

3.4 撤销与重做

• u:撤销上一步操作。

• Ctrl+r:重做上一步被撤销的操作。


4. 查找和替换

4.1 查找

• /pattern:向下查找匹配 pattern 的字符串。

• ?pattern:向上查找匹配 pattern 的字符串。

• n:重复上一次查找操作(相同方向)。

• N:重复上一次查找操作(相反方向)。

4.2 替换

• :s/old/new/:替换当前行第一个匹配的字符串。

• :s/old/new/g:替换当前行所有匹配的字符串。

• :%s/old/new/g:替换整个文件中所有匹配的字符串。

• :%s/old/new/gc:替换时询问确认。


5. 文件操作

• :w:保存文件。

• :q:退出 Vim。

• :wq 或 :x:保存并退出。

• :q!:不保存强制退出。


6. 其他有用命令

• :e filename:打开文件 filename。

• :ls 或 :buffers:列出当前打开的缓冲区。

• :b N:切换到编号为 N 的缓冲区。

• :split filename:水平分割窗口并打开文件。

• :vsplit filename:垂直分割窗口并打开文件。

• Ctrl+w 后跟 h/j/k/l:在分割窗口间切换。


参考资料

• Vim 官方文档:Vim documentation

• 菜鸟教程 Vim 教程:菜鸟教程 - Vim 教程

通过掌握这些常用命令,你可以大幅提升在 Vim 中编辑文件的效率。

如果你觉得本文对你有所帮助,欢迎点个赞支持一下,也请在评论区分享你在 Vim 使用过程中总结的更多技巧和经验!

你有遇到哪些 Vim 使用上的问题?或者有哪些快捷键是你觉得特别好用的?欢迎留言交流,我们一起进步!

相关推荐
tokepson13 小时前
Mysql下载部署方法备份(Windows/Linux)
linux·服务器·windows·mysql
zz_nj15 小时前
工作的环境
linux·运维·服务器
极客先躯16 小时前
如何自动提取Git指定时间段的修改文件?Win/Linux双平台解决方案
linux·git·elasticsearch
suijishengchengde16 小时前
****LINUX时间同步配置*****
linux·运维
qiuqyue17 小时前
基于虹软Linux Pro SDK的多路RTSP流并发接入、解码与帧级处理实践
linux·运维·网络
切糕师学AI17 小时前
Linux 操作系统简介
linux
南烟斋..17 小时前
GDB调试核心指南
linux·服务器
爱跑马的程序员18 小时前
Linux 如何查看文件夹的大小(du、df、ls、find)
linux·运维·ubuntu
oMcLin20 小时前
如何在 Ubuntu 22.04 LTS 上部署并优化 Magento 电商平台,提升高并发请求的响应速度与稳定性?
linux·运维·ubuntu
Qinti_mm20 小时前
Linux io_uring:高性能异步I/O革命
linux·i/o·io_uring