Linux编辑器vim的基本操作(详解及GIF演示)

💫Linux开发工具vim

在我们初学某门语言时可能接触过使用记事本编辑代码,在之后我们开始接触visual studio等集成开发环境,对于这种基于图形化界面的编辑工具我们可以说已经十分熟悉了,那么接下来我们就来介绍一下Linux中的编辑器vim,以及如何使用vim。

⭐️vim的模式

vim是一款多模式编辑工具,本文主要讲解,普通模式,插入模式,底行模式

正常/普通/命令模式(Normal mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及切换其他模式。

插入模式(Insert mode)

做文字输入。

底行模式(last line mode)

文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。

以上是vim最常用的几种模式,vim模式详情可在底行模式输入:help vim-modes(注:当我们切换至底行模式时自动就输入了一个:)

(注:退出查看,底行模式输入:q)

💫vim基本操作

进入vim时,默认是命令模式,

⭐️vim插入模式基本操作

插入模式操作我们早就已经接触过了,可以说十分熟悉,我们怎么在记事本编写代码,插入模式就怎么操作。重点是怎么从命令模式和插入模式中自由切换。
  从命令模式切换至插入模式,可从命令模式输入a,i,o;
  其他的所有模式切换至命令模式,按ESC键
  注:模式之间的切换,只能从命令模式和其他模式之间进行切换,例如我想要从插入模式切换至底行模式,就只能从插入模式切换至命令模式然后再切换至底行模式。

✨命令模式输入i:从光标当前位置输入内容

✨ 命令模式输入a:从光标的下一个位置输入内容

✨ 命令模式输入o:从新的一行输入内容

请看gif动画,我会依次输入i,a,o

注:左下角有模式种类提示

⭐️vim命令模式基本操作

(注:不输入数字n,默认是1)

🌟光标移动操作

**[$] :移动光标至所在行最右侧结尾处。

\^\] :移动光标至所在行最左侧开头处。 \[G\]:移动光标至文本最结尾。 \[n+G\] (注:n表示一个十进制数字):移动光标至指定行。 \[gg\]:移动光标至文本最开始。 \[h\]:光标左移,相当于方向键左 \[j\]:光标下移,相当于方向键下 \[k\]:光标上移,相当于方向键上 \[l\]:光标右移,相当于方向键右 \[w\]:按照"单词"后移 \[b\]:按照"单词"前移(注:单词并不是完全指英语单词,vim有它的界定条件,这个条件需自己感受)** ####     🌟复制,剪切,删除与粘贴操作 **\[n+yy\]:复制当前n行 \[n+dd\]:删处/剪切当前n行, \[n+pp\];粘贴n次内容至当前行 \[n+x\]:删除光标所在n个字符 \[n+X\]:删除光标前n个字符** 我会剪切main函数整体,并且粘贴1次,然后我会复制main函数整体,并且进行2次粘贴。再最后对"main()"进行删除,先5+X,再x. ![在这里插入图片描述](https://file.jishuzhan.net/article/1740547043048296450/78f8d271ef717d6bff2a74ca15cd749b.webp) ####     🌟撤销与撤销撤销操作 **\[u\]:撤销操作 \[ctrl键+r\]:撤销之前做的撤销操作** 我会先删除main函数整体,然后再撤销删除操作,然后再撤销对撤销删除操作的撤销(真拗口呀,操作方面还是自己操作自己感受贴切) ![在这里插入图片描述](https://file.jishuzhan.net/article/1740547043048296450/78f8d271ef717d6bff2a74ca15cd749b.webp) ####     🌟替换操作 **\[\~\]:大小转换 \[n+r\]:替换n个字符 \[R\]:进入替换模式(replace mode):是vim编辑器的一种模式,和插入模式类似,可任意进行字符替换。** 仔细感受GIF(左下角有模式切换提醒) ![在这里插入图片描述](https://file.jishuzhan.net/article/1740547043048296450/44f3d9f3675ceba28402b8074b660983.webp) ####     🌟查找操作 **\[#\]:高亮要查找的函数名/字符串名 \[n\]:下一个函数名/字符串名** (注:取消高亮在底行输入:noh),光标所在字符串或函数名就是我们要查找的 我在这里高亮main()函数然后再取消高亮 ![在这里插入图片描述](https://file.jishuzhan.net/article/1740547043048296450/c0c4a539b60f9fb9439b4611292d41ba.webp) ###   ⭐️vim底行模式基本操作 ####     🌟关于(强制)保存,(强制)退出,与(强制)保存退出 保存:\[:w

(强制)保存:[:w!]

退出:[:q]

(强制)退出:[:q!]

保存退出:[:wq]

(强制)保存退出[:wq!]

ZZ\]保存并退出vim (注:不正常退出,系统会给我们默认保存一个.swp文件,对于这个文件我们恢复后再删除) ####     🌟不退出vim,使用命令行 命令为:\[:! 操作

例如我们在底行输入:!ls

退出按q

🌟vim打开多个文件并且在文件之间进行切换

命令为:[:vs 文件名]

命令模式输入[WW]进行切换

(注:切换过程中注意光标闪动)
💖💖本章到此结束,感谢阅读,你的支持就是我创作的动力,感谢支持。💖💖

🌈如果你只做你能做的事,你永远不会比现在更好。🌈

相关推荐
橙子小哥的代码世界4 分钟前
【大模型RAG】Docker 一键部署 Milvus 完整攻略
linux·docker·大模型·milvus·向量数据库·rag
磊叔的技术博客19 分钟前
随笔小记:SpringBoot 3 集成 SpringDoc OpenAPI
spring boot·后端
JohnYan35 分钟前
Bun技术评估 - 05 SQL
javascript·后端·bun
weixin_4576653935 分钟前
C++11新标准
开发语言·c++
喵个咪42 分钟前
开箱即用的GO后台管理系统 Kratos Admin - 后端权限控制
后端·go·api
用户6757049885021 小时前
如何判断两张图片的相似度?原来图片对比也可以如此简单!
后端
轻松Ai享生活1 小时前
超越可观察性:使用 eBPF 修改系统调用行为
后端
一眼万年041 小时前
Kafka ReplicaManager 深度解析:副本管理的核心引擎
后端
梁凌锐1 小时前
重构手法——代码健壮性增强类 | 防御性编程 | 引入断言
后端
倔强的石头1061 小时前
【Linux指南】用户与系统基础操作
linux·运维·服务器