紅葉~
L
O
A
D
I
N
G
紅葉
vim

vim

⌨️ 本文内容
Vim 的三种模式(命令模式、插入模式、底线命令模式)和可视模式,以及最常用的移动、删除、复制粘贴、保存退出和搜索替换指令。

🚪 1. 打开文件

1
2
touch test.txt
vim test.txt

🔀 2. 模式切换

一打开 Vim 就处于命令模式(默认模式)。在任何模式下按 Esc 都会回到命令模式。

1
2
3
4
命令模式 ──i──▶ 插入模式
命令模式 ──:──▶ 底线命令模式
命令模式 ──v──▶ 可视模式
任意模式 ──Esc─▶ 命令模式

在命令模式下:

按键 作用
i 进入插入模式,可以输入文字
: 进入底线命令模式,在最底一行输入指令
v 进入可视模式,可以选择文字
x 删除光标所在的字符

插入模式常用键

按键 作用
Enter 换行
Backspace 删除光标前一个字符
Del 删除光标后一个字符
方向键 移动光标
Page Up / Page Down 上 / 下翻页

💾 3. 底线命令模式

在命令模式下按 : 进入底线命令模式。保存、退出都要在这里输入指令;按 Esc 回到命令模式。

指令 作用
:w 保存,但不退出
:w! 强制保存,但不退出
:w {name} 另存为 name,但不退出
:q 不保存,直接退出
:q! 不保存,强制退出(有修改但不想保存时用)
:wq 保存并退出
:wq! 强制保存并退出
:e! 放弃所有修改,回到上次保存的状态

⚠️ 感叹号要写在后面::w!、:wq!。写成 :!w 的话,Vim 会把 w 当成一条 shell 命令 去执行。

🖱️ 4. 可视模式

在命令模式按 v 进入可视模式,可以用光标选择文字,方便复制和删除;按 Esc 回到命令模式。

📋 5. 更多常用指令

跳转(底线命令模式)

指令 作用
:0 跳到文件开头
:{number} 跳到第 {number} 行
:$ 跳到最后一行

删除(命令模式)

指令 作用
x 删除光标所在的字符
dd 删除当前行
{n}dd 从当前行开始往下删除 {n} 行

复制粘贴(命令模式)

指令 作用
yy 复制当前行
{n}yy 从当前行开始往下复制 {n} 行
p 粘贴到光标下方
P 粘贴到光标上方

撤销(命令模式)

指令 作用
u 撤销上一次修改

搜索替换(底线命令模式)

指令 作用
/{text} 查找字符串 {text}
:[范围]s/{from}/{to}/g 在范围内把 {from} 全部替换为 {to}

例如,把第 1~4 行里所有的 name 改成 username:

1
:1,4s/name/username/g

💡 范围写 1,$ 或 % 表示整个文件,末尾的 /g 表示一行内全部替换。

本文作者:紅葉
本文链接:https://swe-et.github.io/vim/
版权声明:本文采用 CC BY-NC-SA 3.0 CN 协议进行许可