Linux vi 编辑器超详细使用教程
plaintext命令模式 ←(Esc)→ 插入模式命令模式 ←(Esc)→ 末行模式插入模式 ❌ 直接切换到 末行模式(必须先按Esc回命令模式)新手口诀:打开先别动(命令模式),要编辑按 i(插入模式),要保存按 Esc+:w(回命令模式→末行模式)。
·
vi 是Linux系统内置的纯文本编辑器,vim是vi的增强版,兼容所有的vi操作且增加了语法高亮,代码补全,行号显示等实用功能,差不多几乎所有Linux发行版都预装,是运维,开发必备工具。
vi vim的核心是模式切换,不同模式对应不同操作,如果是新手的话最容易踩坑的就是模式混淆,请记得三个核心模式及切换方式
命令模式(Normal Mode)
- 默认模式:打开 vi/vim 后直接进入,也是其他模式返回的最终模式。
- 核心作用:移动光标、删除 / 复制 / 粘贴文本、撤销 / 重做操作、切换其他模式。
- 外观特征:终端无光标闪烁,输入字符会执行对应命令(而非插入文本)。
2. 插入模式(Insert Mode)
- 核心作用:编辑、输入、修改文本,和记事本 / VS Code 的普通编辑模式一致。
- 进入方式:命令模式下按
i/a/o/I/A/O(6 种方式,按需选择)。 - 退出方式:按
Esc键,直接返回命令模式(最常用,牢记)。 - 外观特征:终端左下角显示
-- INSERT --,光标闪烁,输入字符直接显示在文本中。
3. 末行模式(Command-line Mode)
- 核心作用:执行保存、退出、查找替换、行号显示、文件跳转等高级命令,所有命令以冒号 : 开头。
- 进入方式:命令模式下按
:///?(/和?用于快速查找,也属于末行模式衍生)。 - 退出方式:按
Esc键返回命令模式,或执行完命令后自动返回。 - 外观特征:终端最下方出现冒号
:,光标在冒号后闪烁,输入命令按Enter执行。
模式快速切换总结(必背)
plaintext
命令模式 ←(Esc)→ 插入模式
命令模式 ←(Esc)→ 末行模式
插入模式 ❌ 直接切换到 末行模式(必须先按Esc回命令模式)
新手口诀:打开先别动(命令模式),要编辑按 i(插入模式),要保存按 Esc+:w(回命令模式→末行模式)。
. 命令模式 → 输入模式(6 种常用,按需选)
命令模式下按以下按键,直接进入输入模式,光标位置略有差异:
| 按键 | 进入输入模式后光标位置 | 适用场景 |
|---|---|---|
i |
光标当前位置前 | 光标处直接插入 |
I |
光标所在行首 | 行首开始输入 |
a |
光标当前位置后 | 光标后追加内容 |
A |
光标所在行尾 | 行尾补充内容 |
o |
光标下方新建一行 | 另起一行输入(常用) |
O |
光标上方新建一行 | 向上插入新行 |
2. 输入模式 → 命令模式(唯一)
输入模式下按 Esc 键,左下角 -- INSERT -- 消失,即刻回到命令模式(若按一次没反应,可连续按 2 次)。
3. 命令模式 → 末行模式(唯一)
命令模式下按 : 键,左下角出现冒号 :,进入末行模式,可输入各类指令(如保存、退出)。
4. 末行模式 → 命令模式(两种)
- 执行完末行指令(如按回车确认),自动回到命令模式;
- 未执行指令时,按
Esc键,直接退出末行模式回到命令模式。
二、末行模式常用指令(配合切换使用)
末行模式下输入以下指令,按回车执行,完成后回到命令模式,是编辑后保存 / 退出的核心操作:
| 指令 | 功能 | 适用场景 |
|---|---|---|
:w |
保存文件(不退出) | 编辑中阶段性保存 |
:w 文件名 |
另存为指定文件 | 备份文件内容 |
:q |
退出编辑器(无未保存修改) | 确认内容无需保存时 |
:q! |
强制退出(放弃所有未保存修改) | 编辑错误,无需保留内容 |
:wq / :x |
保存并退出(两者功能一致) | 编辑完成,正常保存退出(常用) |
:set nu |
显示行号 | 定位行、批量编辑时 |
:set nonu |
隐藏行号 | 取消行号显示 |
三、vim 拓展:可视化模式(Visual Mode)
vim 在 vi 基础上增加可视化模式,用于选中批量内容(复制、删除、粘贴),左下角会显示 -- VISUAL --,切换基于命令模式:
1. 命令模式 ↔ 可视化模式
- 命令模式按
v:字符可视化(逐字符选中,常用); - 命令模式按
V:行可视化(整行选中,批量操作行时高效); - 命令模式按
Ctrl + v:块可视化(矩形块选中,适用于表格、批量注释); - 可视化模式按
Esc键:直接回到命令模式。
2. 可视化模式常用操作
选中内容后,直接在可视化模式下执行:
y:复制选中的内容;d:删除选中的内容;p:将复制 / 删除的内容粘贴到光标后。
四、高频切换速记口诀(新手必备)
plaintext
打开默认命令模,i/a/o进输入模;
Esc一键回命令模,冒号:进末行模;
保存w退出q,强制加!,保存退出wq/x;
vim可视化v/V/Ctrl+v,选中操作y复制d删除。
五、常见切换误区
- 忘记切换英文输入法:中文输入法下的
Esc/:/i等按键无效,会导致模式切换失败; - 输入模式直接按
:: 不会进入末行模式,只会输入冒号字符,需先按Esc回命令模式; - 末行模式未按回车:输入指令后必须按回车执行,否则指令无效,仅按
Esc会退出末行模式。
更多推荐


所有评论(0)