当前位置: 首页 > news >正文

Linux编辑器—vim的使用

本期来讲解Linux中常用且高效的编辑器vim的基本使用和指令操作

目录

一、vim的主要三种工作模式

1.命令模式(Command Mode)

2.插⼊模式(Insert mode)

3.底行模式(Last Line Mode)

二、vim的基本操作

三、vim命令模式下的命令集

1.多种转换插入模式的操作

2.光标移动

3.删除文字

4.复制粘贴

5.替换

6.撤销

四、vim底行模式下的命令集

1.列出行号

2.跳转到#行

3.查找字符

4.保存文件

5.退出vim


一、vim的主要三种工作模式

vim拥有十几种工作模式,这里仅介绍三种主要模式。

1.命令模式(Command Mode)

这是 Vim 启动后的默认模式。在此模式下,你输入的按键被解读为命令,用于移动光标、删除文本、复制粘贴等操作。例如,h(左移光标)、j(下移光标)、k(上移光标)、l(右移光标),dd(删除当前行)等。从其他模式按下Esc键通常可返回命令模式。

2.插⼊模式(Insert mode)

用于输入文本内容。在命令模式下按下i(在光标前插入,输入在当前光标的前面)、a(在光标后追加,也就是输入在当前光标的后面)、o(在光标下新开一行并进入插入模式)等键可进入插入模式,此时左下角会显示-- INSERT --。在此模式下,输入的字符会直接插入到文档中,与普通文本编辑软件类似。要回到命令模式,需按Esc键。

3.底行模式(Last Line Mode)

用于执行一些针对整个文件的操作,如保存文件、退出 Vim、查找替换等。在命令模式下输入:,光标会移动到屏幕底部显示:提示符,此时进入底行模式。例如,输入:w保存文件,:q退出 Vim,:wq保存并退出。

二、vim的基本操作

在操作系统输入vim+文件名称,就可以进入vim的屏幕编辑画面,如:

vim code.c

不过有⼀点要特别注意,就是刚进⼊vim的时候,是处于命令模式,你要切换到插⼊模式(命令模式输入i/a/o)才能够输⼊⽂字。

要切换到底行模式,需要先进入命令模式,输入“:”即可。而无论是底行模式还是插入模式,只需要点击键盘左上角的ESC键即可强制转换回命令模式。

如果想要退出vim编辑界面,需要先进入底行模式,接下来有三种退出方式:

: w (保存当前⽂件)
:wq (输⼊「wq」,存盘并退出vim)
: q! (输⼊q!,不存盘强制退出vim)

三、vim命令模式下的命令集

1.多种转换插入模式的操作

以下操作均为命令模式下输入:

按i 操作:按“i”进⼊插⼊模式后是从光标当前位置开始输⼊文字,文字在光标前面出现;

按a操作:按“a”进入插入模式后从光标下一位开始输入文字,文字在光标后面出现;

按o操作:按“o”进入插入模式后,是在光标下面插入了新的一行,从行首开始输入文字。

2.光标移动

vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母h、j、k、l,分别控制光标左、下、上、右移⼀格;

按“G”移动到文本最后;

按“$”移动到光标所在行的行尾;

按“^”移动到光标所在行的行首;

按“w”光标跳到下个字或单词的开头;

按“b”光标跳到上个字或单词的开头;

按“gg”光标回到文本开始。

3.删除文字

x:每按一次,删除光标所在位置的一个字符(相当于插入模式的delete键);

#x:比如6x,删除光标所在位置后面(包括光标本身)的6个字符;

X:每按一次,删除光标所在位置的前一个字符;

#X,比如5X,删除光标所在位置前面(不包括光标本身)的5个字符;

dd:删除光标所在行;

#dd:如10dd,删除光标所在行及后面共10行的文字。

4.复制粘贴

yy:复制光标所在行到缓冲区;

#yy:如30yy,复制光标所在行及往下共30行到缓冲区;

p:将缓冲区内的字符粘贴到光标所在位置,注意:所有与“y”有关的复制命令必须与“p”配套使用才能完成复制粘贴的功能。

5.替换

r:点击r后再点击想要改成的字符,将光标位置的字符改变;

R:替换光标所到位置的所有字符,直到按下ESC键停止。

6.撤销

u:撤销操作回复到操作前的状态,相当于我们熟悉的ctrl+z(这里不能用),可以点击多次进行多次回复;

ctrl + r:撤销的恢复(相当于把撤销给撤销了)。

四、vim底行模式下的命令集

1.列出行号

:set nu(会在文件中的每一行前面列出行号);

2.跳转到#行

:#。 #是一个数字,在底行模式的冒号后面输入一个数字,表示行号,光标就会自动跳转到那一行。

3.查找字符

/关键字:先按/键,再输入想要查找的字符,就会将文本内所有这样的字符高光染色,如果找到的第一个字符不是我们想要的,就一直按n,光标就会一直移动到下一个这样的字符前面;

?关键字:先按?键,再输入想要查找的字符,就会将文本内所有这样的字符高光染色,如果找到的第一个字符不是我们想要的,就一直按n,光标就会一直移动到上一个这样的字符前面;

如果想要取消高光,则再底行模式冒号后面输入nohlsearch即可消除。

4.保存文件

:w,在冒号后面输入w即可保存成功。

5.退出vim

:q,冒号后面按“q”就是退出,但是此时没有对文件进行保存,直接退出可能会报错,只需要在“q”后面加一个“!”即可强制退出;

:wq,一般建议离开时在“q”前面加一个“w”,表示保存并退出。

结束:好啦,本期对vim的操作讲解到此结束,喜欢的建议点赞加收藏哦~

http://www.jsqmd.com/news/84861/

相关文章:

  • 创客匠人峰会实战拆解:三重杠杆撬动千万知识变现 —— 联盟 + IP+AI 的效率革命
  • 创客匠人峰会深度洞察:人文底蕴 + 商业闭环,AI 时代知识变现的 “内外兼修” 之道
  • 【后端】【Java】一文详解Spring Boot 统一日志与链路追踪实践
  • 【后端】【Java】《Spring Boot 统一接口耗时统计实践:基于 HandlerInterceptor 的工程级方案》
  • 【大前端】【Android】一文详解Android MVVM 模式详情解析
  • 46、Asterisk VoIP系统配置指南
  • 【后端】【Java】RESTful书面应该如何写
  • 45、对等网络文件共享与网关互通性解析
  • 【微科普】Louvain 算法,附python代码,让复杂网络 “自己抱团”!
  • 运输层核心总结
  • HarmonyOS 关系型数据库 RDB 数据持久化(ArkTS)实战:建库建表、CRUD、事务、FTS、性能优化,一篇搞懂
  • Cesium快速入门20:Primitive的外观设置Appearance
  • Cesium快速入门19:Entity折线材质
  • 【Codeforces】【Div2】CF 2176
  • Lonsdor K518 PRO FCV Expert License Activation for BMW, MINI, Rolls-Royce Key Programming
  • 应用层复习总结
  • 构建下一代AI算力基石 CANN ops-transformer算子仓库的生态价值与设计哲学
  • STM32F103C8T6 + SI24R1实现2.4G通信
  • 昇腾Ascend C Add算子开发实战-从理论到代码的完整构建
  • AFE为何物
  • 实验实验实验实验。
  • 代码随想录算法训练营第三十三天:零钱兑换,完全平方数,单词拆分
  • 令人“悲哀”的 C# 游戏生态 —— 主流引擎支持现状与现实困境
  • 单车慢跑中的节奏建议
  • 工具分享:彻底解决Docker拉取慢/超时,解放双手!自动测速优选配置镜像源 代理切换脚本
  • CS配合CrossC2插件,实现MacOS/Linux上线
  • 1、掌握 Puppet 4:高效管理 IT 基础设施的秘诀
  • 无需运动恢复结构(SfM)的层级训练三维高斯溅射(3D Gaussian Splatting)
  • 2、初探Puppet清单编写
  • 3、编写首个Puppet清单指南