Vim核心操作

Vim 是 Linux 环境下强大的文本编辑器,以纯键盘操作实现高效编辑。本指南覆盖文件操作、模式切换、搜索、保存等核心功能,帮助你快速入门。


一、核心概念:两大基础模式

Vim 的使用基于模式切换,理解模式是高效编辑的关键。

模式 功能说明 进入方式
正常模式 默认模式,用于移动、删除、复制、搜索等操作 打开文件自动进入 / 任意模式下按 ESC
插入模式 输入与编辑文本 在正常模式下按 i / a / o 等(左下角显示 -- INSERT --)
命令行模式 执行保存、退出、替换等命令 正常模式下按 : 进入

💡 提示:ESC 是模式切换的核心键,建议养成「操作完成 → 按 ESC」的习惯。


二、基础操作详解

1. 打开文件

bash 复制代码
vim 文件名
  • 文件存在 → 直接加载
  • 文件不存在 → 打开空白缓冲区,保存后生成文件

2. 模式切换

正常模式 → 插入模式
按键 功能说明 示例场景
i 在光标前插入 修改句子中间的单词
I 在行首插入 给一行加注释
a 在光标后插入 在单词后追加字符
A 在行尾插入 在行末加 ;
o 在下方新建一行并插入 新增代码行(最常用)
O 在上方新建一行并插入 在配置前加一行说明
插入模式 → 正常模式
  • 按 ESC 或 Ctrl+[

3. 搜索文件内容(正常模式下)

  1. 输入 /关键词 → 按 Enter 开始搜索
  2. n 跳转下一个匹配,N 跳转上一个
  3. 取消高亮::nohl

4. 保存与退出(命令行模式)

  1. 正常模式下按 : 进入命令行模式
  2. 常用命令:
命令 功能说明 场景
:w 保存文件(不退出) 编辑中途保存
:wq / :x 保存并退出(:x 更智能) 编辑完成后退出(最常用)
:q! 强制退出不保存 放弃修改
:w 新文件名 另存为新文件 备份或另存编辑结果

💡 :x 仅在文件有改动时保存,避免多余写入;:wq 则始终保存。


三、高频问题

❓ 按 ESC 无反应?

  • 用 Ctrl+[ 替代
  • 或 Ctrl+C 中断后再试

❓ 报错 E37: No write since last change?

  • 保存退出::wq
  • 放弃修改::q!

❓ 搜索后高亮怎么去掉?

  • 输入 :nohl

四、操作速查表

场景 操作命令 模式要求
打开文件 vim 文件名 Shell 命令行
开始编辑 i / a / o / O 正常 → 插入模式
停止编辑 ESC 插入 → 正常模式
搜索关键词 /关键词 正常模式
保存文件 :w 命令行模式
保存并退出 :wq / :x 命令行模式
强制退出不保存 :q! 命令行模式

五、进阶

掌握基础后,可逐步学习以下命令提升效率:

  1. 文本操作
    • 复制:y(yy = 复制整行)
    • 删除:d(dd = 删除整行)
    • 粘贴:p
  2. 快速移动
    • 行首:0
    • 行尾:$
    • 文件头:gg
    • 文件尾:G
  3. 批量编辑
    • 多行缩进:> / <
    • 全文替换::%s/旧/新/g

💡 随时输入 :help 查看内置文档。


相关推荐
0+11112 小时前
Linux --从 poll 到 epoll多路转接
linux·服务器·1024程序员节
青瓦梦滋12 小时前
WebSocket协议
linux·服务器·网络·c++·websocket·网络协议·http
2601_9498477515 小时前
bcrypt.js 跨端三方库仓颉适配全流程
linux·运维·ubuntu
m0_6399069415 小时前
Linux 操作系统入门:目录结构、服务排查常用命令、Shell 脚本基础
linux·运维·后端
水饺编程17 小时前
第2章:Linux 基础,exit 命令
linux·c语言·汇编
木子欢儿17 小时前
Debian 13 + vsftpd 搭建FTP服务
linux·服务器·前端·网络·debian
GeW18 小时前
新质生产力落地实践:企业级Linux迁移与数据库国产化
linux
雯宝19 小时前
usb_serial_generic_register
linux
疯狂的Meng19 小时前
我把第一周的 Linux 命令整理成了自己的手册(附 7 个我踩的坑)
linux
wt952719 小时前
VMware 虚拟机静态 IP 配置
linux