一、Vim 文本编辑器简介
Vim 文本编辑器是由 vi 演变而来的增强型文本编辑器,以其使用便捷、功能强大的特点,成为了 Linux 众多发行版的默认文本编辑器。
1. Vi 编辑器
vi(Visual Editor)是 Linux 与 Unix 系统中最基本的文本编辑器,类似于 Windows 系统中的记事本(Notepad)。
2. Vi 与 Vim 编辑器的区别
Vim(Vi Improved)是 vi 编辑器的升级版,具有更多实用功能,使用体验更佳。vi 的大部分命令在 Vim 中均可兼容使用。
3. Vim 的四种工作模式
Vim 编辑器包含以下四种模式:
- 命令模式(Command Mode):默认进入模式,可进行光标移动、复制、粘贴、删除等操作。
- 编辑模式(Insert Mode):可对文件内容进行直接编辑。
- 末行模式(Last Line Mode):用于执行查找、替换、保存、退出等命令。
- 可视化模式(Visual Mode):用于选中多行或多列内容,进行块操作。
四种模式之间可通过特定按键切换,掌握模式切换是高效使用 Vim 的关键。
二、Vim 使用详解
1. 使用 Vim 打开文件
vim 文件名
例如:
vim 1.txt
若文件不存在,将自动创建一个新文件。保存并退出后,文件会正式生成。
2. 保存文件并退出
- 按两次
ESC回到命令模式; - 输入
:wq并回车,保存并退出。
3. 不保存退出
- 回到命令模式;
- 输入
:q!强制退出,不保存更改。
4. 命令模式常用操作
4.1 进入命令模式
- Vim 启动后默认进入命令模式;
- 若处于其他模式,按
ESC键两次返回命令模式。
4.2 光标移动操作
| 操作 | 快捷键 |
|---|---|
| 移动至文件首行 | gg |
| 移动至文件末行 | G |
| 向上翻页 | Ctrl + b 或 PgUp |
| 向下翻页 | Ctrl + f 或 PgDn |
| 向上翻半屏 | Ctrl + u |
| 向下翻半屏 | Ctrl + d |
| 定位到第 N 行 | N + G 如 150G |
小技巧:快速定位到错误或关键代码段非常有用!
4.3 复制操作
- 复制当前行:
yy - 向下复制 N 行:
Nyy例如:5yy - 粘贴:
p(在当前行下方粘贴)或P(上方粘贴)
4.4 删除/剪切操作
- 删除当前行:
dd - 删除 N 行:
Ndd例如3dd - 删除光标处到行尾:
D
注意:
dd实为剪切命令,若不粘贴即等同于删除。
4.5 撤销与恢复操作
- 撤销:
u(Undo) - 恢复:
Ctrl + r(Redo)
5. 末行模式操作(Last Line Mode)
5.1 进入与退出方式
- 进入:按
:或/(查找) - 退出:按
ESC或连按ESC两次 或 删除输入内容
5.2 常用命令一览
| 功能 | 命令 |
|---|---|
| 保存 | :w |
| 另存为 | :w 路径 如 :w /root/text.txt |
| 退出 | :q |
| 保存并退出 | :wq |
| 强制退出(不保存) | :q! |
| 查找关键词 | /关键词 |
| 替换当前行第一个匹配项 | :s/旧/新/ |
| 替换当前行所有匹配项 | :s/旧/新/g |
| 替换全文每行第一个匹配项 | :%s/旧/新/ |
| 替换全文所有匹配项 | :%s/旧/新/g |
| 显示行号 | :set nu |
| 取消行号 | :set nonu |
5.3 粘贴模式(解决缩进错乱)
- 启用粘贴模式:
:set paste - 关闭粘贴模式:
:set nopaste
粘贴外部代码时推荐启用
paste模式,避免自动缩进造成格式混乱。
6. 编辑模式操作
6.1 进入编辑模式
i:在光标前插入(Insert)a:在光标后插入(Append)
需在命令模式下使用。
6.2 退出编辑模式
- 直接按
ESC回到命令模式
7. 可视化模式(Visual Mode)
7.1 如何进入
| 模式 | 快捷键 |
|---|---|
| 可视块 | Ctrl + v |
| 可视行 | V |
| 可视字符 | v |
- 使用方向键选择范围,按
y复制,p粘贴,按ESC退出可视模式。
7.2 多行注释(添加 #)
ESC返回命令模式,输入gg到第一行- 按
Ctrl + v进入可视块 - 使用方向键选择多行
- 按
Shift + i输入# - 连按两次
ESC,完成注释
7.3 多行去除注释(删除 #)
ESC → ggCtrl + v进入可视块- 选择多行
- 按
Delete键删除#
8. Vim 编辑器实用功能
8.1 代码语法高亮(Syntax Highlight)
- 开启高亮:
:syntax on - 关闭高亮:
:syntax off
示例:
vim index.php
输入以下内容:
<?php
echo 'hello world';
?>
8.2 异常退出处理
异常退出可能生成 .swp 交换文件,常见原因如终端断开、电源中断等。
- 解决方法:
- 在 Vim 中按
D删除交换文件; - 或在终端中使用:
rm .文件名.swp - 在 Vim 中按
每个异常文件命名格式为
.原文件名.swp。
8.3 正常退出 Vim 总结:
| 操作 | 命令 |
|---|---|
| 保存退出 | :wq |
| 不保存退出 | :q! |
| 保存 | :w |

9519

被折叠的 条评论
为什么被折叠?



