Files
chill_notes/Linux/Tools/Vim命令合集.md
2026-04-21 20:31:53 +08:00

201 lines
3.4 KiB
Markdown
Executable File

# Vim 命令速查
> 最常用的 Linux 文本编辑器
---
## 模式切换
| 模式 | 进入 | 说明 |
|------|------|------|
| 正常模式 | `Esc` | 默认模式,左下角显示文件名 |
| 插入模式 | `i` | 左下角显示 `--INSERT--` |
| 可视模式 | `v` / `V` | 选择文本 |
---
## 启动与退出
```bash
vim filename # 打开文件
vim file1 file2 # 打开多文件
vim -O file1 file2 # 垂直分屏
vim -o file1 file2 # 水平分屏
```
| 命令 | 说明 |
|------|------|
| `:wq` | 保存并退出 |
| `ZZ` | 保存并退出(等价) |
| `:q!` | 强制退出(不保存) |
| `:x` | 保存并退出 |
---
## 移动命令
```bash
# 字符移动
h # 左
j # 下
k # 上
l # 右
5h # 左移5字符
# 单词移动
w # 下一词首
e # 下一词尾
b # 上一词首
2b # 上移2词
# 行移动
0 # 行首
^ # 行首(非空白)
$ # 行尾
3$ # 下移3行尾
# 屏幕移动
Ctrl+f # 下翻一屏
Ctrl+b # 上翻一屏
Ctrl+d # 下翻半屏
Ctrl+u # 上翻半屏
# 文件移动
gg # 文件开头
G # 文件结尾
10G # 跳到第10行
:10 # 跳到第10行
```
---
## 查找与替换
```bash
# 查找
/text # 向下查找
?text # 向上查找
n # 下一个匹配
N # 上一个匹配
* # 查找光标所在词(向下)
# # 查找光标所在词(向上)
# 替换
:s/old/new/ # 替换当前行第一个
:s/old/new/g # 替换当前行所有
:%s/old/new/ # 替换所有行第一个
:%s/old/new/g # 替换所有行
:10,20 s/^/#/ # 10-20行加注释
```
---
## 编辑命令
```bash
# 插入
i # 光标前插入
a # 光标后插入
o # 当前行下插入新行
O # 当前行上插入新行
A # 行尾插入
# 删除
x # 删除当前字符
dd # 删除当前行
5dd # 删除5行
d$ # 删除到行尾
dw # 删除一个词
# 复制粘贴
yy # 复制当前行
5yy # 复制5行
p # 粘贴到光标后
P # 粘贴到光标前
# 撤销
u # 撤销
U # 撤销整行
Ctrl+r # 重做(撤销撤销)
```
---
## 可视模式
```bash
v # 逐字选择
V # 逐行选择
Ctrl+v # 块选择
# 选择后操作
y # 复制
d # 删除
x # 删除
> # 右缩进
< # 左缩进
```
---
## 多文件操作
```bash
:open file # 打开文件
:split file # 分屏打开
:bn # 下一个文件
:bp # 上一个文件
:args # 查看文件列表
:bd # 关闭当前文件
```
---
## 窗口操作
```bash
:split # 水平分屏
:vsplit # 垂直分屏
Ctrl+ww # 切换窗口
Ctrl+wh # 移向左窗口
Ctrl+wl # 移向右窗口
:close # 关闭窗口
:only # 只保留当前窗口
```
---
## 常用配置
```bash
:set number # 显示行号
:set hlsearch # 高亮搜索
:set ignorecase # 忽略大小写
:set tabstop=4 # Tab 宽度
:set expandtab # Tab 转空格
```
---
## 实用技巧
```bash
ddp # 交换两行
xp # 交换两字符
. # 重复上次命令
q: # 命令历史
:%!xxd # 十六进制查看
```
---
## Vim 教程
```bash
vimtutor # 进入教程
```
---
> 参考:[Vim 命令详解](https://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html)