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

 更新时间:2017年04月04日 11:10:30   作者:Anka9080  
最近在MCTF上看到了Vim的undo备份,顺手学习了下 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

总结

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

相关文章

  • Linux启动/停止/重启Mysql数据库的简单方法(推荐)

    Linux启动/停止/重启Mysql数据库的简单方法(推荐)

    下面小编就为大家带来一篇Linux启动/停止/重启Mysql数据库的简单方法(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • 在Centos上搭建Maven中央仓库的方法

    在Centos上搭建Maven中央仓库的方法

    这篇文章主要介绍了在Centos上搭建Maven中央仓库的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • keepalived实现nginx高可用

    keepalived实现nginx高可用

    这篇文章主要为大家详细介绍了keepalived实现nginx高可用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • linux中mkdir命令使用详解

    linux中mkdir命令使用详解

    这篇文章主要详细介绍了linux中mkdir命令使用方法以及实例代码分享,十分的全面,有需要的小伙伴参考。
    2015-01-01
  • Linux alias命令编写

    Linux alias命令编写

    这篇文章主要介绍了Linux alias命令编写,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Centos中如何设置IP地址

    Centos中如何设置IP地址

    这篇文章主要介绍了Centos中如何设置IP地址问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-09-09
  • CentOS7 LNMP+phpmyadmin环境搭建 第一篇虚拟机及centos7安装

    CentOS7 LNMP+phpmyadmin环境搭建 第一篇虚拟机及centos7安装

    这篇文章主要介绍了CentOS7 LNMP+phpmyadmin环境搭建第一篇虚拟机及centos7安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • 使用ab工具对服务器进行API压力测试

    使用ab工具对服务器进行API压力测试

    本文详细讲解了使用ab工具对服务器进行API压力测试的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • Ubuntu 16.04与Apache虚拟主机配置的步骤详解

    Ubuntu 16.04与Apache虚拟主机配置的步骤详解

    这篇文章主要给大家介绍了关于Ubuntu 16.04与Apache虚拟主机配置的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用ubuntu16.04系统具有一定的参考学习价值,需要的朋友们来一起看看吧。
    2018-04-04
  • linux中如何添加用户并赋予root权限详解

    linux中如何添加用户并赋予root权限详解

    这篇文章主要先是给大家介绍了linux中如何添加用户并赋予root权限,而后有详细的介绍了Linux系统用户组的管理,文中通过示例代码介绍的很详细,相信对大家的理解和学习具有一定的参考借鉴价值,有需要的朋友们下面来一起学习学习吧。
    2016-11-11

最新评论