跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / Bash

Linux Vim 指令操作详解

综述由AI生成Linux 环境下 Vim 编辑器的基本操作。Vim 是一款多模式编辑器,包含命令模式、插入模式、底行模式、替换模式和视图模式。文章重点讲解了命令模式下的光标移动、复制剪切删除及撤销指令,以及 h/j/k/l 键的使用逻辑;底行模式下的保存、退出、搜索、分屏及替换指令;替换模式的基本用法。通过掌握这些核心指令,可以有效提升代码编辑效率。

CryptoLab发布于 2026/3/21更新于 2026/5/1519 浏览
Linux Vim 指令操作详解

1. vim 的简介

vim 是个编辑器,类似于 Windows 下大家常用的记事本,但是它比记事本的功能强大的多。vim 是一款具有多模式的编辑器。

本文就是以 vim 的不同模式作为讲解 vim 操作的主线,深入讲解在 vim 不同模式下的各种指令,以及对应的作用。

那么,vim 的模式共有 5 种:命令模式(默认模式)、插入模式、底行模式、替换模式、视图模式。 注意一个地方就是,大家想从一个模式切换到另一个模式期间必须都得先切换回命令模式。

2. 命令模式下的指令

命令模式下,用户在 vim 中输入的所有字符都会被认为指令。

2.1 光标移动类指令

  • gg:作用:定位光标到最开始行。直接按键盘字母 g 键两次。
  • shift+g(G):作用:定位光标到结尾行。
  • [n]+shift+g([n] + G):作用:定位光标到指定行。
  • shift+$:作用:定位光标到当前行的结尾。
  • shift+^:作用:定位光标到当前行的开头。
  • w:光标以单词为距离单位,进行行内或跨行向后移动。
  • b:光标以单词为距离单位,进行行内或跨行向前移动。
  • h:将光标向左移动。
  • j:将光标向下移动。
  • k:将光标向上移动。
  • l:将光标向右移动。

这里需要跟大家,讲一下 h,j,k,l 如何记忆?h 和 l 分别位于这四个字母的最左边和最右边,也就可以形象的记忆为 h 是将光标向左移动,l 是将光标向右移动。其次,j 可以想象成一个英文单词"jump",向下跳,所以 j 就是将光标向下移动。k 可以想象成一个单词"king",国王都是高高在上的,为此 k 就是将光标向上移动!

有些读者肯定会有这么一个疑问,为什么放着键盘现成的上下左右键不用,要用我们不熟悉的 h,j,k,l。原因很简单,就是早期的键盘没有现成的上下左右键,这个点我们要努力克服,尽量使用 h,j,k,l。

2.2 复制、拷贝、剪切、删除以及撤销指令

  • [n]yy:作用:复制行内容。
  • [n]p:作用:粘贴。
  • [n]dd:作用:删除、剪切。
  • [n]x:删除光标之后的字符。
  • [n]X:删除光标之前的字符。
  • u:作用:撤销。
  • ctrl+r:作用:撤销之前的撤销。

2.3 其他作用的指令(大小写切换、替换字符)

  • [n]r:对光标之后的 n(代指数字) 个字符进行替换。
  • shift+~:大小写切换。

2.4 模式之间切换的指令(十分重要)

  • i:切换为插入模式。
  • shift+::切换为底行模式。
  • shift+r:切换为替换模式。
  • shift+v:切换为视图模式。

3. 底行模式下的指令

前提条件是,大家必须得从命令模式中用指令切换到底行模式,才能使用下面的指令。

  1. ESC:退出底行模式,回到命令模式。
  2. set nu:会在 vim 中显示行号。(非常实用)
  3. [n]:在底行模式下,将光标跳转到指定行。
  4. / 关键字:在 vim 显示的文本下从第一个关键字的行开始往下搜索。
  5. ? 关键字:在 vim 显示的文本下从最后一个关键字的行开始往上搜索。
  6. noh:消除查找关键字之后的高亮
  7. vs [filename]:以分屏的形式打开这个文件。
  8. ctrl+ww:切换窗口。
  9. w:保存文件。
  10. q:退出 vim。一般我们可能会遇到 vim 异常,导致你就算切换到底行模式输入了 q 键也无法退出,此时我们就得在 q 后面加一个!号,表示强制退出。而这个指令一般与 w 搭配使用,也就是输入 wq,表示保存并退出!
  11. 替换文本内容:%s/[替换的字符串]/[替换成的字符串]/g

%表示全文替换。s 相当于指令开始的起手势,必不可少。g 表示仅替换第 g 行的指定的字符串。

4. 替换模式下的指令

大家切换到替换模式时,会看到一个小细节:在此模式下,你输入的所有字符都会随着光标的移动覆盖掉你之前写的文本!这个就是替换模式所赋予我们的功能。

  1. ESC:退出替换模式,回到命令模式。

目录

  1. 1. vim 的简介
  2. 2. 命令模式下的指令
  3. 2.1 光标移动类指令
  4. 2.2 复制、拷贝、剪切、删除以及撤销指令
  5. 2.3 其他作用的指令(大小写切换、替换字符)
  6. 2.4 模式之间切换的指令(十分重要)
  7. 3. 底行模式下的指令
  8. 4. 替换模式下的指令
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 算法实战:位运算解法详解(两数之和、唯一数字、消失数字)
  • OpenClaw 本地 AI 助理搭建与配置实战指南
  • 高校电动车租赁系统设计与实现:SpringBoot+Vue+MySQL
  • FPGA 比特流(Bitstream)核心原理与生成流程
  • Java Web 开发入门指南:基础、环境与核心技术
  • 27 岁自学 Python 转行可行性与入行时机分析
  • CSS3 十六进制透明度用法详解与实战技巧
  • Flutter 三方库 shelf_modular 的鸿蒙化适配指南
  • DeepSeek-R1 模型在自动驾驶车端的蒸馏部署方案
  • 浏览器端 HTML 转 Word 文档方案:html-docx-js 使用指南
  • 前端框架选型指南:React、Vue 与 Angular 深度对比
  • Vue3 Webview 转 Android 虚拟导航栏遮挡问题记录
  • Web 可访问性最佳实践:构建人人可用的前端界面
  • Go 语言实现 Natural Sort 自然排序算法源码
  • 云服务器 MySQL 8.0 安装与远程连接配置
  • OpenFPGA:开源 FPGA IP 生成器与架构设计工具
  • 纯 Java 手写多功能 AI Agent:从零实现类 Manus 智能体
  • DeepSeek 使用指南:10 个高效提示词技巧
  • 使用 Python 和 Itchat 实现微信定时消息与自动回复
  • 搭建你的第一个 Agent 智能体

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online