【Linux】开发工具命令指南:深度解析Vim的使用操作

欢迎各位佬进行交流,我们一起无限进步!!!!!!!!!!
文章目录
-
- Vim:多模式高效文本编辑器
Vim:多模式高效文本编辑器
1. 初次体验 Vim
- 启动与基础操作:终端输入
vim 文件名(如vim test.c)启动,默认进入命令模式(此时输入字符会被识别为命令,而非文本);- 若启动后无明显反应,无需慌张,按
i键即可进入插入模式(界面会显示--INSERT--提示),此时可正常输入代码; - 退出提示:若需放弃编辑退出,按
Esc返回命令模式,输入:q!强制退出;若需保存退出,输入:wq或快捷键Shift+zz。
- 若启动后无明显反应,无需慌张,按
- Vim 界面参考:

2. Vim 核心工作模式(5 种模式详解)
Vim 的核心优势是“模式化编辑”,不同模式对应不同操作场景,新手可先掌握前 3 种基础模式,后续逐步熟悉剩余模式。模式分类及操作逻辑如下表:
Esci(光标前)/a(光标后)/o(新行)Esc:(即 Shift+;)Esc 或执行命令后返回Ctrl+v(块级)/v(字符级)/V(行级)EscShift+r(即 R)Esc关键规则:插入模式、命令行模式、可视模式、替换模式之间无法直接切换,必须先按
Esc返回命令模式,再切换至其他模式。
- 模式切换逻辑参考:

3. 命令模式:高效操作核心区
命令模式无需触发,启动后默认进入,所有操作通过“快捷键命令”完成,按功能分类如下:
(1)光标定位(精准移动,告别方向键)
-
行级定位:
- 跳转到第 n 行:
n gg(n 为数字,如5 gg跳转到第 5 行,无需加“+”); - 跳转到文件首行:
gg(无数字,直接按gg); - 跳转到文件末尾:
G(即Shift+G,无需加数字,原“n+Shift+G”为错误命令,会导致跳转到第 n 行而非末尾)。
- 跳转到第 n 行:
-
行内定位:
- 行尾:
Shift+$(光标快速移到当前行最后一个字符); - 行首:
Shift+^(光标快速移到当前行第一个非空字符); - 方向替代(兼容无方向键设备):
h(左)、j(下)、k(上)、l(右)(原“左下上右”顺序错误,需纠正为“左、下、上、右”); - 单词级移动:
w(跳转到下一个单词开头)、b(跳转到上一个单词开头)。
- 行尾:
(2)编辑命令(复制、删除、撤销)
- 复制与粘贴:
- 复制 n 行:
n yy(如3 yy复制当前行及下方共 3 行); - 粘贴:
n p(将复制内容粘贴到当前行下方,n 为粘贴次数,如2 p粘贴 2 次)。
- 复制 n 行:
- 撤销与重做:
- 撤销上一步:
u(可连续撤销,只要不退出 Vim); - 重做撤销操作:
Ctrl+r(恢复被u撤销的步骤)。
- 撤销上一步:
- 删除与剪切:
- 删除 n 行(剪切):
n dd(如2 dd删除当前行及下方 1 行,删除内容可通过p粘贴,等同于“剪切”); - 字符级删除:
x(删除光标后 1 个字符)、X(删除光标前 1 个字符)。
- 删除 n 行(剪切):
- 其他实用命令:
- 大小写转换:
Shift+~(光标所在字符切换大小写,按n Shift+~连续转换 n 个字符); - 局部替换:
n r(从光标开始替换 n 个字符,如4 r1将光标及后续 3 个字符替换为1)。
- 大小写转换:
(3)模式切换命令
- 进入替换模式:
Shift+r(即R),此时输入的字符会直接覆盖光标后的字符,界面显示--REPLACE--提示;
- 进入插入模式:
i(光标前插入)、a(光标后插入)、o(当前行下方新增一行并插入),按需选择即可(如在单词末尾补全用a,新增行写代码用o)。
4. 命令行模式(底行模式):文件与编译操作
按 : 触发命令行模式,输入命令后按回车执行,核心命令按场景分类:
(1)文件基础操作
- 保存与退出:
:w:仅保存文件(不退出,适合编辑中阶段性保存);:q:退出 Vim(需先保存,未保存时会报错);:wq:保存并退出(等同于命令模式的Shift+zz);:!:强制执行(如:q!强制退出不保存、:w!强制保存只读文件)。
- 行号控制:
:set nu:显示行号(写代码查错必备);:set nonu:隐藏行号(需简洁界面时使用)。
(2)搜索与替换
- 关键词搜索:
:/关键词(如:/printf,回车后定位到第一个匹配项,按n找下一个,Shift+n找上一个); - 全局替换:
::%s/旧内容/新内容/g(%表示整个文件,s表示替换,g表示全局匹配,如:%s/int/long/g将所有int改为long);
(3)编译与运行(以 C 语言为例)
- 编译代码:
:! gcc 源码文件 -o 输出文件名(如:! gcc code.c -o myprog,生成可执行文件myprog);- 简化编译:若无需自定义文件名,可直接输入
:! gcc code.c(默认生成a.out);
- 简化编译:若无需自定义文件名,可直接输入
- 运行程序:
:! ./输出文件名(如:! ./myprog,执行编译后的程序并查看输出); - 快速执行历史命令:按
:!后加“命令首字母”,按 Tab 键可补全历史命令(如:!g补全! gcc code.c)。
(4)分屏操作(多文件同时编辑)
- 垂直分屏:
:vs 文件名(如:vs test.c,在当前窗口右侧新增分屏并打开test.c,光标在哪就从哪个窗口分屏);
- 分屏切换:
Ctrl+ww(在多个分屏间循环切换,按一次切换一个窗口); - 关闭分屏:在目标分屏中输入
:q(若为最后一个分屏则退出 Vim)。
5. 可视模式:批量操作神器
可视模式主要用于“批量选中文本”,其中 块级可视模式(Ctrl+v 触发)最适合代码注释、删除等场景,操作步骤如下:
(1)批量添加注释(以 C 语言 // 为例)
- 命令模式下按
Ctrl+v进入块级可视模式; - 按
j/k方向键选中需要注释的所有行(仅需选中每行的开头位置,无需全选); - 按
Shift+i进入“块插入模式”,输入注释符号//(此时仅第一行显示输入内容); - 按
Esc键,选中的所有行开头会自动添加//,完成批量注释;
(2)批量取消注释
- 命令模式下按
Ctrl+v进入块级可视模式; - 按
h/l/j/k选中所有行的//符号(确保仅选中注释部分,不包含代码); - 按
d键删除选中的//,所有行注释同步取消;
(3)批量剪切/复制
- 批量剪切:选中内容后按
d键,直接删除并保存到剪贴板; - 批量复制:选中内容后按
y键,复制到剪贴板,再按p粘贴到目标位置。
6. Vim 配置:自定义你的编辑器
Vim 支持通过 ~/.vimrc 文件自定义功能(如默认显示行号、自动缩进),配置仅对当前用户生效,步骤如下:
(1)基础配置流程(新手必备)
- 返回家目录:终端输入
cd ~(~代表当前用户的主目录,如/home/yourname); - 创建配置文件:输入
touch .vimrc(.vimrc是 Vim 的默认配置文件,前缀.表示隐藏文件); - 编辑配置文件:输入
vim .vimrc,进入 Vim 编辑界面; - 添加基础配置(可直接复制以下内容,按
Esc后输入:wq保存生效):\" 显示行号(写代码查错必备)set nu\" Tab 键对应 4 个空格(符合多数代码缩进规范)set tabstop=4\" 自动缩进(新行与上一行缩进对齐,写循环/函数时不用手动缩进)set autoindent\" 高亮当前行(方便定位光标位置)set cursorline\" 插入模式下按 jj 快速返回命令模式(替代 Esc 键,更顺手)inoremap jj \" 搜索时忽略大小写(输入 /Printf 和 /printf 效果一致)set ignorecase
(2)进阶配置与模式查询
- 进阶配置:若需代码补全、主题美化等功能,可创建
~/.vim目录,下载插件(如Vundle插件管理器)放入该目录,具体配置可参考 AI 或 Vim 插件文档; - 查看所有模式:原
vim-modes命令错误(Vim 无此命令),正确方式是在 Vim 内输入:help modes并回车,查看官方模式说明文档;
- 配置效果参考:

注意:不同用户的 Vim 配置相互独立(每个用户的
~/.vimrc仅作用于自己),无需担心影响其他用户。


