Linux Vim 文本编辑器基础指南

Linux Vim 文本编辑器基础指南

日期:2026-03-25

标签:Linux, Vim, 编辑器, 命令


一、Vim 三种模式

复制代码
┌─────────────┐     i      ┌─────────────┐     Esc    ┌─────────────┐
│   命令模式   │ ─────────→ │   编辑模式   │ ─────────→ │   命令模式   │
│   (Normal)  │            │   (Insert)  │            │   (Normal)  │
└─────────────┘            └─────────────┘            └──────┬──────┘
       ↑                                                      │
       └──────────────────────────────────────────────────────┘
                            :
                      ┌─────────────┐
                      │   底行模式   │
                      │   (Command) │
                      └─────────────┘

二、模式切换

shift+字符或字母键(最终结果)

操作 命令 说明

命令模式 → 编辑模式 i 在光标前插入(insert) shift+i(I)首行插入

编辑模式 → 命令模式 Esc 退出编辑

命令模式 → 底行模式 shift+;(:) 输入命令

底行模式 → 命令模式 Esc 或 执行完自动返回 -


三、命令模式操作

3.1 光标定位(快速移动)

命令 功能 记忆技巧
gg 定位到文件第一行 good game,回到开头
G (Shift+g) 定位到文件最后一行 大G = 大结尾
nG 跳转到第 n 行 如 46G 跳到46行
$ (Shift+4) 定位到当前行尾 像绳子末端
^ (Shift+6) 定位到当前行首 ^ 像小帽子在行首
w 按单词向后移动 word,下一个单词
b 按单词向前移动 back,回退
hjkl 左下上右移动 h左l右,j跳向下,k王在上

hjkl 记忆法:h 在最左边,l 在最右边;j 像 jump 向下跳;k 像 king(国王)高高在上

3.2 复制粘贴

命令 功能
yy 复制光标所在行
nyy 复制光标所在行及下方 n-1 行(如 5yy 复制5行)
p 粘贴到光标下一行
np 粘贴 n 次

3.3 剪切删除

命令 功能 说明
dd 剪切(删除)当前行 不粘贴就是删除
ndd 剪切 n 行 如 3dd 删除3行
dd + p 真正的剪切 先删再贴,实现剪切
x 删除光标后一个字符
nx 删除光标后 n 个字符

3.4 撤销与恢复

命令 功能
u 撤销(undo)
Ctrl + r 恢复撤销(redo)

3.5 其他实用操作

命令 功能 说明
~ (Shift+) 大小写转换 间断按:单个字符转换;按住不动:整行快速转换 R(Shift+r) 批量化替换 进入替换模式,直接覆盖原有字符 .` 重复上一步操作 非常高效!


四、编辑模式

进入方式:在命令模式按 i

就是正常的文本输入,按 Esc 回到命令模式


五、底行模式(:)

5.1 常用命令

命令 功能
:w 保存(write)
:q 退出(quit)
:wq:x 保存并退出
:q! 强制退出不保存
:set nu 显示行号
:set nonu 关闭行号
:n 跳转到第 n 行(如 :46
:/关键字 搜索关键字(如 :/hello

5.2 多文件编辑

命令 功能
:vs 文件名 垂直分屏打开文件(vertical split)
:sp 文件名 水平分屏打开文件(split)
Ctrl + w + w 在窗口间切换
Ctrl + w + h/j/k/l 向左右上下切换窗口

多文件操作:光标在哪个窗口,就操作哪个文件,可以跨文件复制粘贴


六、Vim 配置文件

6.1 配置文件位置

用户 配置文件路径 说明

普通用户 ~/.vimrc 每个用户独立配置

root 用户 /etc/vimrc~/.vimrc 系统级或用户级

注意:一个用户一个配置,相互不会影响!

6.2 快速创建配置

bash 复制代码
# 普通用户
vim ~/.vimrc

# root 用户
sudo vim /etc/vimrc
# 或
vim ~/.vimrc

6.3 推荐基础配置

vim 复制代码
" 显示行号
set nu

" 语法高亮
syntax on

" 自动缩进
set autoindent
set tabstop=4
set shiftwidth=4

" 启用鼠标
set mouse=a

" 显示当前行
set cursorline

" 搜索高亮
set hlsearch

七、速查表

复制代码
┌─────────────────────────────────────────┐
│              光标移动                    │
├─────────────────────────────────────────┤
│  gg      →  文件开头                     │
│  G       →  文件结尾                     │
│  nG      →  第 n 行                      │
│  $       →  行尾                         │
│  ^       →  行首                         │
│  w/b     →  按单词移动                   │
│  hjkl    →  左下上右                     │
└─────────────────────────────────────────┘

┌─────────────────────────────────────────┐
│              编辑操作                    │
├─────────────────────────────────────────┤
│  i       →  进入编辑模式                 │
│  yy      →  复制行                       │
│  p       →  粘贴                         │
│  dd      →  剪切/删除行                  │
│  u       →  撤销                         │
│  Ctrl+r  →  恢复                         │
│  .       →  重复上一步                   │
└─────────────────────────────────────────┘

┌─────────────────────────────────────────┐
│              底行命令                    │
├─────────────────────────────────────────┤
│  :w      →  保存                         │
│  :q      →  退出                         │
│  :wq     →  保存退出                     │
│  :q!     →  强制退出                     │
│  :set nu →  显示行号                     │
│  :vs     →  垂直分屏                     │
└─────────────────────────────────────────┘

八、学习建议

  1. 先记住 iEsc:wq 三个命令 ------ 能编辑能保存
  2. 熟练 hjkl 移动 ------ 不用方向键是 vim 的灵魂
  3. 掌握 yypdd ------ 高效编辑的核心
  4. 多用 . 重复操作 ------ 提升效率的秘诀

Vim 哲学:保持手指在键盘中央,减少移动,高效编辑!

相关推荐
DianSan_ERP3 小时前
如何通过抖店订单接口实现订单状态管理与履约自动化?
运维·自动化
b***25113 小时前
18650电池点焊机:电阻焊技术如何决定电池组的成败|深圳比斯特自动化
运维·自动化
原来是猿4 小时前
网络计算器:理解序列化与反序列化(中)
linux·运维·服务器·网络·tcp/ip
前端老曹4 小时前
Docker 从入门到放弃:完整指南
运维·docker·容器
AOwhisky4 小时前
虚拟化技术学习笔记
linux·运维·笔记·学习·虚拟化技术
rabbit_pro5 小时前
Docker compose部署Ollama使用模型
linux·运维·docker
笑洋仟7 小时前
docker的overlay2目录占用磁盘空间很大,清理办法
运维·docker·容器
木雷坞7 小时前
2026 年 5 月国内可用 Docker 镜像源列表与配置方法
运维·docker·容器
Irissgwe8 小时前
六、Ext系列文件系统(2.核心原理与应用)
linux·分区··inode·软硬连接·路径缓存·ext系列文件
2301_780789668 小时前
“数字珍珠港”再现:西北能源基地DNS篡改事件深度复盘与防护升级
运维·服务器·网络·tcp/ip·网络安全·智能路由器·能源