Linux基础开发工具—vim

ops/2025/3/14 23:26:27/

目录

vim%E7%9A%84%E6%A6%82%E5%BF%B5-toc" name="tableOfContents" style="margin-left:0px">1、vim的概念

vim%E7%9A%84%E5%B8%B8%E8%A7%81%E6%A8%A1%E5%BC%8F-toc" name="tableOfContents" style="margin-left:0px">2、vim的常见模式

vim%E6%A8%A1%E5%BC%8F-toc" name="tableOfContents" style="margin-left:40px">2.1 演示切换vim模式

vim%E5%91%BD%E4%BB%A4%E6%A8%A1%E5%BC%8F%E5%B8%B8%E7%94%A8%E6%93%8D%E4%BD%9C-toc" name="tableOfContents" style="margin-left:0px">3、vim命令模式常用操作

3.1 移动光标

3.2 删除文字

3.3 复制

3.4 替换

vim%E5%BA%95%E8%A1%8C%E6%A8%A1%E5%BC%8F%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4-toc" name="tableOfContents" style="margin-left:0px">4、vim底行模式常用命令

4.1 查找字符

vim%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6-toc" name="tableOfContents" style="margin-left:0px">5、vim的配置文件


vim%E7%9A%84%E6%A6%82%E5%BF%B5" name="1%E3%80%81vim%E7%9A%84%E6%A6%82%E5%BF%B5">1、vim的概念

Vim全称是Vi IMproved,即说明它是Vi编辑器的增强版。

Vim是一种多模式编辑器,不同模式下按键功能不同。

vim%E7%9A%84%E5%B8%B8%E8%A7%81%E6%A8%A1%E5%BC%8F" name="2%E3%80%81vim%E7%9A%84%E5%B8%B8%E8%A7%81%E6%A8%A1%E5%BC%8F">2、vim的常见模式

vim的常见模式有三种:命令模式、插入模式、底行模式。

命令模式(Normal mode)

vim打开文件时默认的模式,控制屏幕光标的移动,字符、字或行的删除,移动复制某区段进入插入模式下,或者到底行模式。

插入模式(Insert mode)

只有在插入模式下,才可以做文字输入,按「ESC」键可回到命令模式。该模式是我们后面使用得最频繁的编辑模式。在命令模式下按i\o\a等即可进入插入模式。

底行模式(last line mode)

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

三种模式的切换


vim%E6%A8%A1%E5%BC%8F" name="2.1%20%E6%BC%94%E7%A4%BA%E5%88%87%E6%8D%A2vim%E6%A8%A1%E5%BC%8F">2.1 演示切换vim模式

在bash中输入vim+文件名就可以用vim打开文件,此时vim为默认的命令模式

这就是进入了vim且模式为命令模式

从命令模式进入插入模式,需要输入i/o/a。

i\o\a的区别:

i进入后光标在位置不变,但推出后若在一行的首个字符,光标不变,不在就会到上一个字符的位置。

o进入后会光标在上一次的行换行到下一行,退出插入模式回到命令模式后,光标位置不变。

a进入后光标会转移到上一个字符的下一个位置,退出插入模式回到命令模式后,光标会回到在插入模式所处字符的上一个字符位置。

在命令模式下按 : (冒号)即 【shift+;】,就可以进入底行模式


vim%E5%91%BD%E4%BB%A4%E6%A8%A1%E5%BC%8F%E5%B8%B8%E7%94%A8%E6%93%8D%E4%BD%9C" name="3%E3%80%81vim%E5%91%BD%E4%BB%A4%E6%A8%A1%E5%BC%8F%E5%B8%B8%E7%94%A8%E6%93%8D%E4%BD%9C" style="background-color:transparent">3、vim命令模式常用操作

3.1 移动光标

gg:光标定位到文件开头。
shift + g(G):光标定位到文件结尾。
n + shift + g(nG):光标定位到文件第n行。
shift + 6(^):光标定位到行开始。
shift + 4($):光标定位到行结尾。
h、j、k、l:左、下、上、右移动。

3.2 删除文字

x :每按一次,删除光标所在位置的一个字符
n + x :例如,「6x」表示删除光标所在位置的“后面(包含自己在内)"6个字符
X :大写的X,每按一次,删除光标所在位置的“前面”一个字符
n + X :例如,「20X」表示删除光标所在位置的“前面”20个字符

以上都是在一行内的操作。是一行内的前后。
dd :删除光标所在行
n + dd :从光标所在行开始删除n行

3.3 复制

yw :将光标所在之处到字尾的字符复制到缓冲区。
n + yw :复制n个字到缓冲区。
yy :复制光标所在行到缓冲区。
n + yy :例如,「6yy」表示连续复制从光标所在的该行“往下数”6行文字到缓冲区。
p :将缓冲区内的字符粘贴到光标所在位置。

n + p : 例如,「6p」表示连续粘贴从光标所在的该行“往下数”6行。

注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

u :撤销

ctrl + r :对撤销撤销

dd :剪切

n + dd :剪切n行

3.4 替换

r :替换光标所在的字符

n + r :替换光标所在的后n个字符

shift + r(R) :替换光标所到之处的字符,直到按下「ESC」键为止。

3.5 批量化注释

批量化注释

1、ctrl v(进入可视化模式)

2、h、j、k、l区域选择,j

3、shift + i = I

4、//

5、ESC

批量化去注释

1、ctrl v

2、h、j、k、l区域选择

3、d


vim%E5%BA%95%E8%A1%8C%E6%A8%A1%E5%BC%8F%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4" name="4%E3%80%81vim%E5%BA%95%E8%A1%8C%E6%A8%A1%E5%BC%8F%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4">4、vim底行模式常用命令

列出行号:set nu

跳转到文件中的某一行:n

保存文件:w

离开vim:q,如果无法离开,在 q 后面加 ! 强制离开vim,此时一般并没有退出,按任意键又可以返回vim

保存并退出:wq

分屏:vs 文件名

4.1 查找字符

/ + 关键字 :先按 / 键,再输入想要查找的字符,如果第一次找的关键字不是想要的,可以一直按 n 会往后寻找到需要要的关键字为止。
? + 关键字 :先按 ? 键,再输入想要查找的字符,如果第一次找的关键字不是想要的,可以一直按 n 会往前寻找到需要的关键字为止。


vim%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6" name="5%E3%80%81vim%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6">5、vim的配置文件

系统中公共的vim配置文件在/etc目录下面,是一个叫vimrc的文件。配置这个文件对所有用户都生效

每个用户的家目录下都有自己的配置文件.vimrc,如果没有可以创建一个。配置这个文件只对该用户有效。

vim的配置就是对这个名为vimrc.vimrc的文件内容的修改。

对于vim的配置,大家可以按照vim的配置代码进行一个一个地配置,也可以在网络上寻找别人公开的vim配置文件进行使用,这里不再赘述。


http://www.ppmy.cn/ops/165785.html

相关文章

大白话解释 React 中高阶组件(HOC)的概念和应用场景,并实现一个简单的 HOC。

高阶组件(HOC)的概念 在 React 里,高阶组件(Higher-Order Component,简称 HOC)就像是一个“超级工厂函数”。它本身是一个函数,而且这个函数接收一个组件作为参数,然后返回一个新的…

Linux常见指令

Linux常见指令 1、ls指令2、pwd命令3、cd指令4、touch指令5、mkdir指令6、rmdir指令和rm指令7、man指令8、cp指令9、mv指令10、cat指令11、重定向12、more指令13、less指令14、head指令15、tail指令16、管道17、时间相关指令18、cal指令19、find指令20、grep指令21、zip/unzip指…

【MySQL是怎么运行的】二、索引

引擎层有支持索引,如InnoDB和MyISAM,区别就是InnoDB支持事务、外键和行锁 索引物理结构 页:一页16KB,一页包含了多行记录 行:包含元数据和真实数据 元数据: record_type(记录的类型&#xff…

内检实验室LIMS系统在汽车制造行业的应用

随着汽车制造行业的快速发展,内检实验室在确保产品质量、提升生产效率和满足法规要求方面扮演着越来越重要的角色。内检实验室LIMS系统(实验室信息管理系统)通过数字化和自动化手段,为汽车制造行业的实验室管理带来了革命性的变化…

手写svm primal form形式

svm.py import numpy as npclass SVM:def __init__(self,C1.0,lr0.01,batch_size32,epochs100):self.CCself.lrlrself.batch_sizebatch_sizeself.epochsepochsself.wNoneself.b0.0self.epoch0#计算最高得分和对应w,bdef fit(self,X,y,X_valNone,y_valNone):sample,…

flink cdc同步mysql数据

一、api 添加依赖 <dependency><groupId>org.apache.flink</groupId><artifactId>flink-connector-mysql-cdc</artifactId><!-- 请使用已发布的版本依赖&#xff0c;snapshot 版本的依赖需要本地自行编译。 --><version>3.3-SNAP…

【后端】【django drf】django自动导出优雅的api文档的写法

Django DRF API 编写规范&#xff08;包含 OpenAPI 生成规则&#xff09; 为了确保 Django DRF API 代码的可维护性、可扩展性&#xff0c;同时生成清晰、规范、结构层次分明的 OpenAPI 文档&#xff0c;必须遵循以下规则。 一、使用 drf-spectacular 生成 OpenAPI 文档 &…

2025年智能工单管理系统产品推荐

工单管理系统已成为企业数字化转型的“智能中枢”&#xff0c;尤其在生成式AI深度赋能的2025年&#xff0c;系统的选择直接影响30%以上的服务响应效率。本文从AI融合深度、产品竞争力、场景适配性等维度&#xff0c;为您精心推荐2025年五大智能工单系统。 一、轻帆云&#xff0…