linux中vim常用命令大全详细讲解

news/2025/3/29 19:11:47/文章来源:https://www.cnblogs.com/jelly12345/p/18794164

Vim 是 Linux 系统中功能强大的文本编辑器,广泛用于代码编辑和配置文件的编辑。以下是 Vim 常用命令的详细讲解,包括基本操作、文本编辑、查找与替换、窗口操作等。
一、Vim 基本操作
1. 启动和退出 Vim
启动 Vim:

vim filename

退出 Vim:

  • 正常退出并保存::wq 或 ZZ
  • 仅退出(不保存)::q
  • 强制退出(不保存)::q!
  • 仅保存文件::w

2. 模式切换
Vim 有多种模式,最常用的是以下几种:

  • 正常模式(Normal Mode):Vim 启动时默认的模式,可以执行各种命令,如移动光标、删除文本等。按 Esc 键进入。
  • 插入模式(Insert Mode):可以输入文本。按 i 进入,按 Esc 返回正常模式。
  • 可视模式(Visual Mode):用于选中文本块。按 v 进入,可视模式下可使用方向键选择文本。

常用模式切换命令:

  • i:进入插入模式,在当前光标位置前插入。
  • a:进入插入模式,在当前光标位置后插入。
  • o:在当前行下方打开新行并进入插入模式。
  • v:进入可视模式。
  • V:进入可视行模式(选中整行)。
  • Ctrl + v:进入可视块模式(列选择)。

二、Vim 光标移动命令
1. 基本移动

  • h:向左移动一个字符。
  • l:向右移动一个字符。
  • j:向下移动一行。
  • k:向上移动一行。

2. 行内移动

  • 0:移动到行首。
  • ^:移动到本行第一个非空白字符。
  • $:移动到行尾。

3. 单词移动

  • w:移动到下一个单词的开头。
  • e:移动到当前或下一个单词的末尾。
  • b:移动到上一个单词的开头。

4. 页面移动

  • Ctrl + u:向上滚动半页。
  • Ctrl + d:向下滚动半页。
  • Ctrl + b:向上滚动一整页。
  • Ctrl + f:向下滚动一整页。
  • G:移动到文件末尾。
  • gg:移动到文件开头。

5. 行跳转

  • :n:跳转到第 n 行。
  • nG:跳转到第 n 行。

三、Vim 文本编辑命令
1. 插入和删除

  • i:进入插入模式。
  • a:在当前光标后插入文本。
  • o:在当前行下方新开一行并进入插入模式。
  • dd:删除当前行。
  • D:删除当前光标到行尾的所有内容。
  • x:删除当前光标所在的字符。
  • dw:删除当前光标到单词末尾的内容。
  • u:撤销上一步操作。
  • Ctrl + r:重做上一步撤销的操作。

2. 复制、剪切与粘贴

  • yy:复制当前行。
  • yw:复制一个单词。
  • p:粘贴到光标后。
  • P:粘贴到光标前。
  • dd:剪切当前行。
  • daw:剪切一个单词。

3. 替换与修改

  • r:替换当前字符。
  • R:进入替换模式,从光标开始的字符将被逐个替换,直到退出替换模式为止。
  • cw:修改当前单词(删除当前单词并进入插入模式)。
  • c$:修改从光标位置到行尾的内容。

四、Vim 查找与替换命令
1. 查找

  • /pattern:向下查找 pattern(正则表达式)。
  • ?pattern:向上查找 pattern。
  • n:在查找模式下,查找下一个匹配项。
  • N:在查找模式下,查找上一个匹配项。
  • *:查找光标所在单词的下一个匹配项。
  • #:查找光标所在单词的上一个匹配项。

2. 替换

  • :s/old/new:替换当前行的第一个匹配的 old 为 new。
  • :s/old/new/g:替换当前行的所有 old 为 new。
  • :%s/old/new/g:替换整个文件中的所有 old 为 new。
  • :%s/old/new/gc:替换整个文件中的所有 old 为 new,每次替换前提示确认。

五、Vim 多窗口与多文件操作
1. 多窗口操作

  • :split 或 :sp:水平分割窗口。
  • :vsplit 或 :vsp:垂直分割窗口。
  • Ctrl + w, w:在分割窗口之间切换。
  • Ctrl + w, h/j/k/l:分别向左、下、上、右切换窗口。
  • :q:关闭当前窗口。

2. 多文件操作

  • :e filename:打开指定文件。
  • :bnext 或 :bn:切换到下一个缓冲区(文件)。
  • :bprev 或 :bp:切换到上一个缓冲区(文件)。
  • :ls:列出所有缓冲区(打开的文件)。
  • :bN:切换到缓冲区 N。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/906233.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信公众号---API接口发布文章

最近在做一个项目,需要用到通过API接口发布推文。 基本流程: 1、注册微信公众号(订阅号和服务号都可以) 2、开发配置获取 appid 以及 appsecret,以及配置服务器IP白名单。 3、开发流程:接口需要 access_token 第一步:上传推文的素材,主要是推文的封面以及文章所需要的图…

航航(和一些人讲的题目)

这里标题是 hangjsmh 要求的题解写的非常简略,甚至一道题细节都没有清楚。 AGC067D 首先设排列为 \(1\sim n\) 是可行的。 第一感觉是相邻不可交换,即如果 \(l_i<i\),则 \(r_{i-1}=i-1\)。进一步地,\(r_{l_i\sim i}<i\),如果满足这个条件也易见其唯一性。 画在二维平…

win11自带录屏工具

Setp1: 打开设置Setp2: 打开游戏->摄像Setp3: 配置录制参数Setp4: 开始录像 WIN+Alt+GSetp5: 打开录像文件

杭州储存卡数据恢复之雷克沙短路损坏不识别售后维修失败二次修复

这是一张64G的Lexar雷克沙CF接口内存卡,型号是1066X,CANON佳能5D4相机使用的,这张存储卡是硬件出问题了无法识别,说是可能插卡时角度不对用力顶入后使顶针VCC脚变形短路,通电后导致芯片损坏。客户先寄修到雷克沙官方售后那边进行维修,但最终检测修复失败,说是短路严重,…

RabbitMQ核心架构

Producer:负责产生消息。 Connection:RabbitMQ客户端和代理服务器之间的TCP连接。 Channel:建立在连接之上的虚拟连接,RabbitMQ操作都是在信道中进行。 Broker:一个Broker可以看做一个RabbitMQ服务节点或者服务实例。 Exchange:生产者发送消息到交换器,交换器根据路由ke…

024 登录页-main退出登录功能的实现

这个页面这样写一、 用于创建一个按钮并绑定一个点击事件处理函数。以下是对这段代码的详细解释:<button> 标签:这是 HTML 中的按钮元素,用于在页面上显示一个可点击的按钮。@click 指令:在 Vue.js 中,@click 是一个事件绑定指令,它用于监听按钮的点击事件。@ 是 …

ProfiNet转Modbus TCP协议转换网关驱动三菱PLC与伺服的毫秒级动态参数同步

一、案例背景 在“双碳”战略推动下,新能源锂电池行业迎来爆发式增长。某新能源科技公司新建的锂电池生产线中,涂布工序作为核心环节,采用了德国博世力士乐IndraDriveCX系列伺服驱动器(ProfiNet从站)实现高精度张力控制,而车间级监控系统选用三菱L系列PLC(ModbusTCP主站…

MySQL-面经

目录 MVCC概念?如何实现? 可重复读概念 可重复读下,快照是在什么时候生成的,是事务启动时,还是语句执行前 可重复读下,执行两个select语句,会生成几个快照?MVCC概念?如何实现? MVCC概念:通过「版本链」来控制并发事务访问同一个记录时的行为就叫 MVCC(多版本并发控制…

算法备案五大真相

一些开发者已经了解到算法备案是AI类产品必做的一项资质了,但因为经验有限,依然存在一些盲点和不清楚的地方。今天,我就整理出了最基础但也最重要的五大算法备案真相,供大家参考。如有其它疑问,欢迎进一步咨询算法备案办理问题。一、流程统一,审核不统一 算法备案有全国统…

Cknife配置

项目地址 https://github.com/Chora10/Cknife 使用Java编译器 这里使用eclipse 1. File->Open Project from File System...选择目录,点击完成2. 在刚添加的项目上按右键,并点击导出Export选择可运行的jar文件选择路径3. 这里没有选择或没有配置有效的“Launch configurat…

医疗场景实战:百条数据 RFT 微调盘古大模型,精度大幅提升

摘要:RFT强化微调是一种新型LLM微调方法,通过强化学习与传统微调结合,少量数据即可显著增强领域场景的模型能力。本文分享自华为云社区《医疗场景实战|百条数据RFT微调盘古大模型,效果超越DS》,作者:盘古大模型官方账号。 医疗场景实战|百条数据RFT微调盘古大模型,效果超…

SQL Server 启用 sa

Hello World ‍‍ ‍‍‍‍‍