Vim/Vi 常用命令速查手册

Vim/Vi 常用命令速查手册

Vim/Vi 是一款强大的文本编辑器,掌握常用命令可以极大提高编辑效率。以下是分类整理的常用命令:


一、基本操作

命令 功能
vi 文件名 打开/创建文件
:q 退出(无修改时)
:q! 强制退出(不保存)
:w 保存文件
:wq 或 ZZ 保存并退出
:x 保存并退出(仅修改时保存)

二、光标移动

命令 功能
h j k l 左、下、上、右移动
0 跳至行首
^ 跳至行首第一个非空白字符
$ 跳至行尾
gg 跳至文件第一行
G 跳至文件最后一行
:n 或 nG 跳至第 n 行(如 :10 或 10G)
Ctrl + f 向下翻页(Page Down)
Ctrl + b 向上翻页(Page Up)
w 跳至下一个单词开头
b 跳至上一个单词开头
e 跳至当前单词末尾

三、插入与编辑

命令 功能
i 在光标前插入
a 在光标后插入
I 在行首插入
A 在行尾插入
o 在当前行下方插入新行
O 在当前行上方插入新行
x 删除当前字符
dd 删除当前行
yy 复制当前行
p 粘贴到光标后
P 粘贴到光标前
u 撤销(Undo)
Ctrl + r 重做(Redo)
r 替换当前字符(如 rx 替换为 x)
cw 修改当前单词(删除并进入插入模式)

四、查找与替换

命令 功能
/关键词 向下查找(如 /error)
?关键词 向上查找
n 跳至下一个匹配项
N 跳至上一个匹配项
:s/old/new 替换当前行第一个匹配
:s/old/new/g 替换当前行所有匹配
:%s/old/new/g 全局替换
:set hlsearch 高亮查找结果
:nohlsearch 临时关闭高亮

五、多文件操作

命令 功能
:e 文件名 打开另一个文件
:bn 切换到下一个缓冲区
:bp 切换到上一个缓冲区
:bd 关闭当前缓冲区
:ls 列出所有缓冲区
:vsp 文件名 垂直分屏打开文件
:sp 文件名 水平分屏打开文件
Ctrl + w + w 切换窗口

六、高级技巧

命令 功能
. 重复上一次修改
>> 缩进当前行
<< 取消缩进当前行
:%!sort 对文件内容排序
:r !命令 插入命令输出(如 :r !date 插入当前日期)
Ctrl + v 进入块选择模式
:set number 显示行号
:set nonumber 隐藏行号

七、宏录制

命令 功能
q字母 开始录制宏(如 qa)
q 停止录制
@字母 执行宏(如 @a)
@@ 重复上一次宏

八、Vim 配置

命令 功能
:help 命令 查看帮助(如 :help :w)
:version 查看 Vim 版本
:set 查看当前配置
:set tabstop=4 设置 Tab 为 4 个空格
:set expandtab 将 Tab 转换为空格

总结

  • 基本操作 ::wq、i、Esc
  • 光标移动 :h j k l、gg、G
  • 编辑 :dd、yy、p、u
  • 查找替换 :/、?、:%s/old/new/g
  • 分屏 ::vsp、:sp、Ctrl + w + w
  • 宏 :qa、q、@a

掌握这些命令后,你可以高效使用 Vim/Vi 进行文本编辑!🚀

相关推荐
爱吃香菜的初学者4 小时前
十四.Linux——消息队列
linux·运维·开发语言
Apipi*11 小时前
30天速通Linux 第六章信号及信号处理
linux·运维·信号处理
天启HTTP12 小时前
爬虫防封核心原理:IP轮换机制与风控规避逻辑
linux·服务器·网络·爬虫·tcp/ip
广州浮点FLOATLIC15 小时前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库
BLUcoding15 小时前
接口服务公网超时排查记录:SecureRandom 阻塞问题分析与解决
java·linux·springboot·aes·securerandom
AIgorithmGEEK15 小时前
[Linux]从手写报头到内核套路:序列化、反序列化与自定义协议全链路
linux·运维·服务器·网络·序列化·反序列化
Nil20815 小时前
leetcode 139单词拆分
linux·运维·服务器
Starry-sky(jing)15 小时前
BUG: unable to handle kernel paging request 完整排查:dmesg 四要素与三路定罪
linux·运维·服务器·内核·排障
mounter62515 小时前
从硬件互连到操作系统变革:CXL 技术演进与 Linux 内核工程挑战
linux·运维·服务器
xh didida17 小时前
Linux -- 基础IO
linux·服务器·开发语言·c++