当前位置: 首页 > 编程笔记 >

Vim中的几种文件备份方法总结

干永丰
2023-03-14
本文向大家介绍Vim中的几种文件备份方法总结,包括了Vim中的几种文件备份方法总结的使用技巧和注意事项,需要的朋友参考一下

一、Vim 的交换文件 .filename.swp

默认交换文件在打开文件的时候就会产生交换文件,正常退出的时候才会删除交换文件(断电,Ctrl+Z强制退出就不会删除),内容大致是这个样子。


通过在 Vim 配置文件设置 set noswapfile 来关闭交换文件

二、 Vim 的备份文件 filename~

默认关闭,需要通过设置 set backup 来开启,Unbuntu的Vim配置文件是 /etc/vim/vimrc

开启后,对文件进行修改后会保存修改之前的一个副本,展示如下:


如果不喜欢 ~ 作为备份文件的后缀,可以使用 set backupext=.bak 来设置备份文件的扩展名。

当然可以通过设置 set nobackup 来关闭备份文件。

三、undo 备份文件 .filename.un.~

默认关闭,需要设置 set undofile 来开启 undo 备份文件。这是 Vim 官方给出的 undo 备份文件的解释:

When on, Vim automatically saves undo history to an undo file when writing a buffer to a file, and restores undo history from the same file on buffer read.

也就是说开启时,在 Vim 中编辑文件是使用了 撤销更改(u命令)的操作,会把撤销更改的那部分保存到缓存文件 ..un.~ 中。
测试发现这个 undo 缓存文件是追加写入的,所以你所有的撤销操作都会在这个文件中找到。

内容大概是这个样子:

四、PS

默认缓存文件会在当前目录下生成,可以通过修改配置文件的方式指定自动保存位置。

参考连接中有提高可以通过 Vim 的备份机制实现 内容的版本控制。

我们可以从漏洞挖掘的角度延伸一点点,像 敏感文件扫描这种工具一般都是一个敏感文件列表无脑开扫,若是增加一个功能:

结合爬虫已经爬取到的文件和目录,生成相应的缓存/备份文件,是不是又会有新的发现 :p

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对小牛知识库的支持。

 类似资料:
  • 本文向大家介绍windows mysql 自动备份的几种方法汇总,包括了windows mysql 自动备份的几种方法汇总的使用技巧和注意事项,需要的朋友参考一下 基于之前的文章方法,加入批处理命令即可实现自动备份。只是由于批处理命令中对于备份文件的名字按照时间命名比较特别,所以特别整理一文。 1、复制date文件夹备份 ============================ 假想环境: MyS

  • 本文向大家介绍python 下载文件的几种方法汇总,包括了python 下载文件的几种方法汇总的使用技巧和注意事项,需要的朋友参考一下 前言   使用脚本进行下载的需求很常见,可以是常规文件、web页面、Amazon S3和其他资源。Python 提供了很多模块从 web 下载文件。下面介绍 一、使用 requests   requests 模块是模仿网页请求的形式从一个URL下载文件 示例代码:

  • 本文向大家介绍MySql数据库备份的几种方式,包括了MySql数据库备份的几种方式的使用技巧和注意事项,需要的朋友参考一下 mysqldump工具备份 备份整个数据库 备份数据库中的某个表 备份多个数据库 备份系统中所有数据库 直接复制整个数据库目录(对于InnoDB存储引擎不适用)备份 windowns: installpath/mysql/data linux: /var/lib/mysql

  • 本文向大家介绍java 获取字节码文件的几种方法总结,包括了java 获取字节码文件的几种方法总结的使用技巧和注意事项,需要的朋友参考一下 java 获取字节码文件的几种方法总结 在本文中,以Person类为例,将分别演示获取该类字节码文件的三种方式, 其具体思想及代码如下所示: 以上就是java 获取字节码文件的几种方法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家

  • 本文向大家介绍java 遍历Map的几种方法总结,包括了java 遍历Map的几种方法总结的使用技巧和注意事项,需要的朋友参考一下 一、迭代key&value 第一种方式:迭代entrySet 1.方法一 2.方法二 第二种方式:迭代keySet 3.方法三 4.方法四 5.小结   注意:     遍历Map类集合KV,推荐使用entrySet而不是keySet   原因:     keySet

  • 本文向大家介绍Android UI更新的几种方法总结,包括了Android UI更新的几种方法总结的使用技巧和注意事项,需要的朋友参考一下  Android UI更新 做过Android开发的人都遇到过这样的问题:随着需求的变化,某些入口界面会出现UI的增减、内容变化和跳转界面变化等问题,这里就说明几种方法来实现 UI的更新。 1、Activity的 runOnUiThread   android