Vim/Vi 常用命令速查手册

Vim/Vi 常用命令速查手册

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


一、基本操作

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

二、光标移动

命令 功能
h j k l 左、下、上、右移动
0 跳至行首
^ 跳至行首第一个非空白字符
$ 跳至行尾
gg 跳至文件第一行
G 跳至文件最后一行
:nnG 跳至第 n 行(如 :1010G
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 转换为空格

总结

  • 基本操作:wqiEsc
  • 光标移动h j k lggG
  • 编辑ddyypu
  • 查找替换/?:%s/old/new/g
  • 分屏:vsp:spCtrl + w + w
  • qaq@a

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

相关推荐
CN-Dust2 小时前
【VSCode】复制到下一行快捷键
ide·vscode·编辑器
java叶新东老师3 小时前
git stash 命令详解
linux·运维·flink
写bug的羊羊4 小时前
CentOS 9 配置国内 YUM 源
linux·运维·centos
Johny_Zhao7 小时前
CentOS Stream 9上部署FTP应用服务的两种方法(传统安装和docker-compose)
linux·网络安全·信息安全·kubernetes·云计算·containerd·ftp·yum源·系统运维
守望时空338 小时前
RustDesk搭建指南
linux
C++ 老炮儿的技术栈8 小时前
在 Scintilla 中为 Squirrel 语言设置语法解析器的方法
linux·运维·c++·git·ubuntu·github·visual studio
白鹭8 小时前
基于LNMP架构的分布式个人博客搭建
linux·运维·服务器·网络·分布式·apache
java叶新东老师9 小时前
linux 部署 flink 1.15.1 并提交作业
linux·运维·flink
vsropy9 小时前
VScode输出中文乱码问题解决
ide·vscode·编辑器
程序员JerrySUN10 小时前
Linux系统架构核心全景详解
linux·运维·系统架构