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

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/g

g:全局替换,替换所有符合条件的内容。
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.kler.cn/news/162187.html

相关文章:

  • Notepad安装
  • 查看电脑cuda版本
  • The LINQ expression “xxx“ could not be translated
  • PHP数据库操作实例 - 学生信息管理
  • 3、Linux_系统用户管理
  • “四位一体”引领企业数据治理新模式
  • 多功能智能遥测终端机 5G/4G+北斗多信道 视频采集传输
  • flutter学习-day3-dart基础
  • Html5响应式全开源网站建站源码系统 附带完整的搭建教程
  • (C语言实现)高精度除法 (洛谷 P2005 A/B Problem II)
  • C/C++---------------LeetCode第278. 第一个错误的版本
  • MySQL-DATE_FORMAT()函数
  • 如何设置和使用静态HTTP服务器
  • 一天一个设计模式---原型模式
  • [MySQL] MySQL复合查询(多表查询、子查询)
  • Linux学习教程(第十四章 Linux系统服务管理)一
  • Docker构建自定义镜像
  • Determining Which Version of GDS is Installed
  • 银河麒麟安装lnmp,安装chrome。
  • [FPGA 学习记录] 快速开发的法宝——IP核
  • 【异常】SpringBoot3.2.0 Description: Failed to configure a DataSource: ‘url‘ att
  • 商品详情页评论和评论列表评论的排序html代码
  • Python---面向对象其他特性
  • 前端小技巧: 写一个异步程序示例, 使用任务队列替代promise和async/await等语法糖
  • Node CLI 之 Commander.js (1)
  • 性能测试工具:Jmeter介绍
  • 什么是网站?
  • Zabbix自定义飞书webhook告警媒介1
  • 设计模式基础——工厂模式剖析(2/2)
  • 使用 python ffmpeg 批量检查 音频文件 是否损坏或不完整