你好,我是风一样的树懒,一个工作十多年的后端专家,曾就职京东、阿里等多家互联网头部企业。公众号“吴计可师”,已经更新了近百篇高质量的面试相关文章,喜欢的朋友欢迎关注点赞
每次感觉使用vim命令,总觉得操作有些不是特别顺畅,现在正好整理一下常用的命令。
以下是 Vim 常用命令的全面总结,涵盖 导航、编辑、搜索、文件操作、分屏、插件管理 等核心场景,适合快速查阅和系统学习:
一、模式切换
| 命令 | 作用 |
|---|
i | 进入插入模式(光标前) |
a | 进入插入模式(光标后) |
o | 下方插入新行并进入插入模式 |
O | 上方插入新行并进入插入模式 |
v | 进入字符可视模式 |
V | 进入行可视模式 |
Ctrl+v | 进入块可视模式 |
Esc | 返回普通模式 |
二、光标移动
基础移动
| 命令 | 作用 |
|---|
h j k l | 左、下、上、右移动 |
w | 跳到下一个单词开头 |
b | 跳到上一个单词开头 |
e | 跳到当前单词末尾 |
0 | 跳到行首 |
^ | 跳到行首第一个非空白字符 |
$ | 跳到行尾 |
gg | 跳到文件开头 |
G | 跳到文件末尾 |
5G | 跳转到第5行 |
屏幕滚动
| 命令 | 作用 |
|---|
Ctrl+f | 向下滚动一屏 |
Ctrl+b | 向上滚动一屏 |
Ctrl+d | 向下滚动半屏 |
Ctrl+u | 向上滚动半屏 |
zz | 当前行居中 |
三、文本编辑
删除操作
| 命令 | 作用 |
|---|
x | 删除当前字符 |
dw | 删除一个单词 |
dd | 删除当前行 |
D | 删除至行尾 |
d$ | 同 D |
复制粘贴
| 命令 | 作用 |
|---|
yy | 复制当前行 |
yw | 复制一个单词 |
p | 粘贴到光标后 |
P | 粘贴到光标前 |
撤销与重做
四、搜索与替换
搜索
| 命令 | 作用 |
|---|
/pattern | 向前搜索模式 |
?pattern | 向后搜索模式 |
n | 跳转到下一个匹配项 |
N | 跳转到上一个匹配项 |
替换
| 命令 | 作用 |
|---|
:%s/old/new/g | 全局替换 |
:10,20s/old/new/g | 替换10-20行的匹配项 |
:%s/old/new/gc | 替换时确认 |
五、文件与窗口操作
文件操作
| 命令 | 作用 |
|---|
:w | 保存文件 |
:q | 退出Vim |
:wq 或 :x | 保存并退出 |
:q! | 强制退出不保存 |
:e filename | 打开新文件 |
分屏与窗口
| 命令 | 作用 |
|---|
:split | 水平分屏 |
:vsplit | 垂直分屏 |
Ctrl+w hjkl | 切换窗口方向 |
Ctrl+w w | 循环切换窗口 |
Ctrl+w c | 关闭当前窗口 |
六、高级技巧
宏录制
| 命令 | 作用 |
|---|
q{寄存器} | 开始录制宏(如 qa) |
q | 停止录制 |
@{寄存器} | 执行宏(如 @a) |
块操作
- 进入块可视模式:
Ctrl+v
- 选择多行区域
- 输入操作命令:
I:在块前插入
A:在块后插入
d:删除块内容
y:复制块内容
缩进调整
| 命令 | 作用 |
|---|
>> | 当前行缩进 |
<< | 当前行取消缩进 |
= | 自动格式化缩进 |
七、插件管理(Vundle示例)
- 安装 Vundle:
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
- 配置
.vimrc:
set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin '插件名称'
call vundle#end()
filetype plugin indent on
- 安装插件:
:PluginInstall
八、配置优化(.vimrc 示例)
" 显示行号
set number
" 语法高亮
syntax on
" 缩进设置
set tabstop=4
set shiftwidth=4
set expandtab
" 搜索高亮
set hlsearch
" 快捷键映射
nnoremap <C-s> :w<CR>
inoremap jj <Esc>
总结
通过掌握这些核心命令,Vim 的编辑效率将显著提升。建议通过 刻意练习 逐步内化操作,例如:
- 导航练习:仅用
h/j/k/l 和 w/b 移动光标
- 编辑挑战:使用
d/y/p 完成文本重组
- 搜索实战:用
/ 和 :%s 快速修改代码
最终目标是形成 肌肉记忆,无需思考即可流畅操作。
今天文章就分享到这儿,喜欢的朋友可以关注我的公众号,回复“进群”,可进免费技术交流群。博主不定时回复大家的问题。
公众号:吴计可师
