vim常见操作

vim常见操作

文章目录

  • vim常见操作
    • 1. 回退/前进
    • 2. 搜索
    • 3. 删除
    • 4. 定位到50行
    • 5. 显示行号
    • 6. 复制粘贴
    • 7. 剪贴
    • 8. 替换
    • 9. vim打开文件的时候出现

1. 回退/前进

1.esc进入命令模式
2.ctrl+r 前进 u 回退

2. 搜索

1) esc进入命令模式
2) /text  查找text,按n健查找下一个,按N健查找前一个。
3) ?text  查找text,反向查找,按n健查找下一个,按N健查找前一个

3. 删除

dd 命令行模式下删除单行

4. 定位到50行

:50 回车

5. 显示行号

:set nu  命令模式下输入

6. 复制粘贴

命令模式下在复制开始位置按v
然后上下左右移动光标至需复制结束位置按y这个时候复制的内容就保存至剪贴板中了然后移动光标至粘贴位置按p便可总之,要在 vim 中复制文本,可以使用 v 命令选中要复制的文本,然后使用 y 命令将其复制到剪贴板中,最后使用 p 或 P 命令将文本粘贴到需要的位置。

7. 剪贴

总之,要在 vim 中剪贴文本,
可以使用 v 命令选中要剪贴的文本,
然后使用 d 命令将其剪贴到剪贴板中,
最后使用 p 或 P 命令将文本粘贴到需要的位置。

8. 替换

在 vim 中,:%s/echo/return/g 命令会将整个文件中的所有 “echo” 替换为 “return”,其中 % 表示搜索范围为整个文件。如果省略 %,则默认只搜索当前行,并且只替换第一个匹配到的结果。

命令模式下
:%s/echo/return/gg:全局替换,替换所有符合条件的内容。
c:交互式替换,每次替换前都会请求用户确认。
i:忽略大小写,不区分大小写进行匹配和替换。

9. vim打开文件的时候出现

用vim 命令打开文件时(即使未修改),会在源文件的同一目录下(而不是执行命令的目录),创建一个名为 .filename.swp 的交换文件

ll -a

  • 交换文件记录了源文件的原始内容、用户每次修改的增量内容,从而允许用户撤销操作、重做操作。
  • 交换文件会比源文件的体积更大一些。
  • 退出vim时,会自动删除交换文件。

该报错(发现交换文件)表示该文件已存在交换文件,可能是因为:

  • 此时有其他用户正在用 vi/vim 打开该文件,而一个文件同时只允许被一个 vim 进程修改。
  • 之前某个用户用 vi/vim 打开了该文件,但vim 进程异常退出,没有自动删除交换文件

解决方法

# 恢复到文件的最后修改状态
vim -r .filename.swp 或者 :recover
# 保存文件
:wq    
# 删除交换文件
rm -f .filename.swp  

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

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

相关文章

【STM32】TIM定时器输入捕获

1 输入捕获 1.1 输入捕获简介 IC(Input Capture)输入捕获 输入捕获模式下,当通道输入引脚出现指定电平跳变时(上升沿/下降沿),当前CNT的值将被锁存到CCR中(把CNT的值读出来,写入到…

类风湿性关节炎口腔黏膜破裂引发抗瓜氨酸细菌和人蛋白抗体反应

今天给同学们分享一篇实验文章“Oral mucosal breaks trigger anti-citrullinated bacterial and human protein antibody responses in rheumatoid arthritis”,这篇文章发表在Sci Transl Med期刊上,影响因子为17.1。 结果解读: 口腔黏膜破…

Redis主从复制的配置和实现原理

Redis的持久化功能在一定程度上保证了数据的安全性,即便是服务器宕机的情况下,也可以保证数据的丢失非常少。通常,为了避免服务的单点故障,会把数据复制到多个副本放在不同的服务器上,且这些拥有数据副本的服务器可以用…

如何快速构建知识服务平台,打造个人或企业私域流量

随着互联网的快速发展,传统的知识付费平台已经不能满足用户的需求。而SaaS知识付费小程序平台则是一种新型的知识付费方式,具有灵活、便捷、高效等特点,为用户提供了更加优质的付费知识服务。本文将介绍如何搭建自己的SaaS知识付费小程序平台…

如何掌握构建 LMS 网站的艺术

目录 什么是学习管理系统 (LMS) 在线课程和 LMS 网站的好处 为什么 WordPress 对于 LMS 网站很重要 统一学习中心 多功能性和可扩展性 提高教育参与度 简化管理和监控 节省时间和费用 技能评估和绩效监督 持续学习和技能提升 使用 WordPress 插件构建成功的 LMS 课程 专注于您的…

sparkc程序idea调试提示内存不足

报错如下: Exception in thread "main" java.lang.IllegalArgumentException: System memory 259522560 must be at least 471859200. Please increase heap size using the --driver-memory option or spark.driver.memory in Spark configuration. 测…

自动驾驶:传感器初始标定

手眼标定 机器人手眼标定AxxB(eye to hand和eye in hand)及平面九点法标定 Ax xB问题求解,旋转和平移分步求解法 手眼标定AXXB求解方法(文献总结) 基于靶的方法 相机标定 (1) ApriTag (2) 棋盘格:cv::f…

富时中国A50指数暴跌

近年来,中国股市的波动一直备受关注,而富时中国A50指数更是其中一项备受瞩目的指标之一。然而,近期却出现了一场引人瞩目的暴跌,引发了广泛的关注和讨论。 富时中国A50指数简介 富时中国A50指数,作为富时罗素指数系列…

全新UI彩虹外链网盘系统源码V5.5/支持批量封禁+优化加载速度+用户系统与分块上传

源码简介: 全新UI彩虹外链网盘系统源码V5.5,它可以支持批量封禁优化加载速度。新增用户系统与分块上传。 彩虹外链网盘,作为一款PHP网盘与外链分享程序,具备广泛的文件格式支持能力。它不仅能够实现各种格式文件的上传&#xff…

CLASS60 DM蓝牙5.2双模热插拔PCB

键盘使用说明索引(均为出厂默认值) 软件支持(驱动的详细使用帮助)一些常见问题解答(FAQ)首次使用步骤蓝牙配对规则(重要)蓝牙和USB切换键盘默认层默认触发层0的FN键配置的功能默认功…

使用word中的VBA 批量设置Word中所有图片大小

在VBA编辑器中,你可以创建、编辑和运行VBA宏代码,以实现自动化任务和自定义Word 功能。如果你是VBA编程初学者,可以在VBA编辑器中查看Word VBA宏代码示例,以便更好地了解如何使用VBA编写代码。 要打开VBA编辑器,你可以…

【Vue】修改组件样式并动态添加样式

文章目录 目标修改样式动态添加/删除样式样式不生效 注意:类似效果el-step也可以实现,可以不用手动实现。这里只是练习。 目标 使用组件库中的组件,修改它的样式并动态添加/删除样式。 修改样式 组件中的一些类可能添加样式无法生效。如Ele…

[java学习日记]反射、动态代理

目录 一.反射的简单解释与获取字节码文件对象 二.获取构造方法对象Constructor 三.反射获取字节码文件中的成员变量Field 四.反射获取字节码文件中的成员方法:Method 五.反射练习:保存信息 六.反射练习:利用配置文件(存储类名…

第21章:网络通信

21.1 网络程序设计基础 21.1.1 局域网与互联网 为了实现两台计算机的通信,必须用一个网络线路连接两台计算机。如下图所示 21.1.2 网络协议 1.IP协议 IP是Internet Protocol的简称,是一种网络协议。Internet 网络采用的协议是TCP/IP协议&#xff0…

Google Bard vs. ChatGPT 4.0:文献检索、文献推荐功能对比

在这篇博客中,我们将探讨和比较四个不同的人工智能模型——ChatGPT 3.5、ChatGPT 4.0、ChatGPT 4.0插件和Google Bard。我们将通过三个问题的测试结果来评估它们在处理特定任务时的效能和响应速度。 导航 问题 1: 统计自Vehicle Routing Problem (VRP)第一篇文章发…

netty源码:(4)ServerBootstrap

ServerBootstrap的group方法用来给成员变量赋值,如下图 AbstractBootstrap为ServerBootstrap的父类。 ServerBootstrap的channel方法用来设置channelFactory成员变量(在父类AbstractBootstrap里) ServerBootstrap的childHandler方法用来给本类的成员…

软件开发的代码审查工具

在进行软件开发时,代码审查(Code Review)是一种非常重要的实践,它有助于发现潜在的问题、提高代码质量,并促使团队成员之间的知识共享。有许多工具可用于简化和优化代码审查过程。以下是一些常见的代码审查工具&#x…

【Pyqt】QObject::connect: Cannot queue arguments of type ‘QTextCursor‘

问题说明 文本框接收到新的数据 不会自动滚动,并提示警告 QObject::connect: Cannot queue arguments of type ‘QTextCursor’ (Make sure ‘QTextCursor’ is registered using qRegisterMetaType().) 原因 线程回来的槽函数里面 调用了ui的代码 我们不能通过线程…

ArcGIS Pro中怎么设置标注换行

在ArcGIS Pro中进行文字标注的时候,如果标注的字段内容太长,直接标注的话会不美观,而且还会影响旁边的标注显示,这里为大家介绍一下在ArcGIS Pro中设置文字换行的方法,希望能对你有所帮助。 数据来源 本教程所使用的…

深入浅出理解kafka ---- 万字总结

1.Kafka简介 Kafka 本质上是一个 MQ(Message Queue),使用消息队列的优点: 解耦:允许独立的扩展或修改队列两边的处理过程。可恢复性:即使一个处理消息的进程挂掉,加入队列中的消息仍然可以在系…