以下是一份 Vim 命令大全 ,涵盖 编辑模式(Insert Mode) 、命令模式(Normal Mode) 和 视图模式(Visual Mode) 的常用操作,适合初学者和进阶用户使用。
🧾 Vim 模式简介
Vim 是一个模式化编辑器 ,主要有以下几种模式:
模式 进入方式 说明 正常模式(Normal Mode) 启动 Vim 默认进入此模式 可执行移动光标、复制粘贴等操作 插入模式(Insert Mode) 按 i, a, o 等键进入 可以输入文本内容 视觉模式(Visual Mode) 按 v, V, Ctrl + v 进入 可以选择文本块进行操作 命令行模式(Command-line Mode) 按 : 或 / 进入 执行保存、搜索、替换等命令
🔧 一、正常模式(Normal Mode)命令
启动 Vim 默认进入此模式。按下 Esc 可从其他模式返回。
🔍 光标移动
命令 功能 h向左移动一个字符 j向下移动一行 k向上移动一行 l向右移动一个字符 w移动到下一个单词的开头 b移动到上一个单词的开头 e移动到当前或下一个单词的结尾 0移动到当前行的行首 $移动到当前行的行尾 gg跳转到文件开头 G跳转到文件末尾 nG跳转到第 n 行(如 5G 到第 5 行) Ctrl + f向下翻页 Ctrl + b向上翻页 Ctrl + d向下滚动半页 Ctrl + u向上滚动半页
✏️ 编辑操作
命令 功能 x删除当前字符 X删除前一个字符 dw删除一个单词 dd删除整行 ndd删除 n 行(如 3dd 删除 3 行) d$删除从光标位置到行尾 d0删除从光标位置到行首 yy复制当前行 nyy复制 n 行 yw复制一个单词 p在光标下方粘贴 P在光标上方粘贴 u撤销一次修改 Ctrl + r重做一次撤销 .重复上一次编辑操作
⚙️ 文件操作
命令 功能 :w保存文件 :w filename另存为 filename :q退出(无修改时) :q!强制退出且不保存修改 :wq保存并退出 :wq!强制保存并退出 :e filename打开另一个文件 :set number 或 :set nu显示行号 :set nonumber 或 :set nonu隐藏行号 :set list显示隐藏字符(如空格、Tab) :set tabstop=4设置 Tab 宽度为 4 个字符 :set autoindent自动缩进 :set paste进入粘贴模式(防止自动缩进干扰) :set nopaste关闭粘贴模式
🔍 搜索与替换
命令 功能 /pattern向后搜索 pattern ?pattern向前搜索 pattern n查找下一个匹配项 N查找上一个匹配项 :%s/old/new/g替换整个文件中的 old 为 new :1,10s/old/new/g替换第 1~10 行中的 old 为 new :s/old/new/替换当前行第一个匹配项 :s/old/new/g替换当前行所有匹配项 :s/old/new/gc替换当前行所有匹配项,并确认每个替换
✍️ 二、插入模式(Insert Mode)
按以下任意键可进入插入模式,按 Esc 返回正常模式。
命令 功能 i在光标前插入 I在行首插入 a在光标后插入 A在行尾插入 o在当前行下方新建一行并插入 O在当前行上方新建一行并插入 s删除当前字符并进入插入模式 S删除当前行并进入插入模式
🧮 三、视觉模式(Visual Mode)
按以下任意键进入视觉模式,用于选中文本进行操作。
命令 功能 v字符选择模式(Character-wise Visual Mode) V行选择模式(Line-wise Visual Mode) Ctrl + v块选择模式(Block-wise Visual Mode) o切换光标起始点 >向右缩进选中区域 <向左缩进选中区域 y复制选中内容 d 或 x删除选中内容 c删除选中内容并进入插入模式 :对选中区域执行命令(如 :'<,'>s/old/new/g)
💡 四、命令行模式(Command-line Mode)
按 : 或 / 或 ? 进入该模式,用于执行命令。
命令 功能 :w保存 :q退出 :wq保存并退出 :q!不保存强制退出 :/pattern搜索 pattern 并跳转到第一次出现的位置 :help打开帮助文档 :help keyword查找关键字的帮助信息 :registers查看剪贴板寄存器内容 :map查看按键映射 :syntax on/off开启/关闭语法高亮 :filetype plugin indent on开启智能缩进和插件支持
🎨 五、高级技巧(可选)
技巧 命令 多窗口分屏 :split(水平)或 :vsplit(垂直)切换窗口 Ctrl + w + 方向键打开多个文件 vim file1 file2在多个文件之间切换 :next / :prev / :first / :last加载插件管理器(如 Plug) :PlugInstall(需配置 vim-plug)使用宏录制 q{a-z} 录制宏,@{a-z} 执行宏快速注释代码(结合插件) 如 NERD Commenter: <leader>cc 注释选中行
📄 六、实用示例
示例 1:查找并替换
:%s/foo/bar/g
将全文中所有 foo 替换为 bar
示例 2:显示行号并跳转到第 50 行
:set number
:50
示例 3:多窗口打开两个文件
:split otherfile.txt
示例 4:快速删除 5 行
5dd
📚 总结表格
操作 命令 进入插入模式 i, a, o 等返回正常模式 Esc删除字符 x删除行 dd复制行 yy粘贴 p撤销 u重做 Ctrl + r保存 :w退出 :q保存并退出 :wq搜索 /keyword替换 :%s/old/new/g显示行号 :set number进入选择模式 v, V, Ctrl + v
如果你是新手,可以先掌握以下核心命令:
i # 进入插入模式
Esc # 返回正常模式
:wq # 保存并退出
:x # 保存并退出(简写)
dd # 删除一行
yy p # 复制粘贴一行
u # 撤销
Ctrl + r # 重做