恢复未保存文档内容
2017-08-10 08:27
363 查看
概述
在用vim打开一个文件时,其会产生一个.filename.swap文件,用于保存数据,当文件非正常关闭时,可用此文件来恢复,当正常关闭时,此文件会被删除,非正常关闭时,不会被删除,所以提示存在.swap文件.由于意外导致了还没正常保存文档就退出了编辑的页面,可能导致文档里新编辑的内容还没保存,这个时候要想办法进行恢复。这个在日常的工作中偶尔会出现,本文就这个问题的解决进行了通过实验,描述了恢复的办法
操作选项介绍
假设实验编辑中但是未保存的文件名是tt当重新编辑未保存的文件tt时,vimtt就会出现如下的页面,此时有5个选项。![](http://upload-images.jianshu.io/upload_images/6943703-9fa30e52957ac7bb.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
选项O:虽然显示是只读模式,但是用root账号编辑后强制退出,还是能保存配置
选择E:此时编辑的文档内容是上一次保存前的内容,上次编辑但是没保存的内容暂时没有写入到该文档里面选项R:分为两个情况情况一:还没有做过任何保存,此时按R的话,就会导致恢复的内容,是上一次未保存的内容,上次编辑的内容将不会被保存。相当于运行了vim –r tt进行恢复情况二:再按R之前已经有对tt在此编辑保存过了,导致了tt此时已经和.tt.wap文件不一致了,比如,如果我通过O或者E对文档进行了编辑且保存过,此时如果还是选择R选项进行修改,会变成新的页面,如果在这个页面上编辑,且进行了保存,则会导致之前的文档内容全部清空,只保存最后这次按了R后编辑的内容。所以,看到空白的新页面,千万不要编辑,直接按q!退出,这个时候文档将还是上一次编辑保存的内容。操作的时候,需谨慎查看编辑器下方的提示内容,如下的内容,就表示.tt.swap已经不能恢复了。
![](http://upload-images.jianshu.io/upload_images/6943703-c5857c077c0ba349.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
以上两个情况,下一次打开还是一样会出现截图的内容。如果要使得截图的内容下次不再出现,在已经确保文件都已经恢复,且保存的情况下,删掉生成的.tt.swap文件即可。可用语句ls –a查看隐藏的文件。
选项Q退出,放弃编辑选项A,直接中断本次的命令,放弃编辑
实验模拟
情况一:实验中,我是通过crtl+z来实现为保存退出当前编辑模式的。所以我通过jobs可以查看到当前的后台挂起的任务,所以可以通过fg调出任务,新调出的任务为上次未保存时的内容,可以在该文档下wq!,则会将中断前编辑的内容也写到了tt这个文件里。通过这种方式恢复的话,则.tt.swap这个文件也会被自动删除了。(备注;ctrl+z的是将任务中止(暂停的意思),但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态,用户可以使用fg/bg操作继续前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务放在后台执行.)情况二实验中,打开tt编辑中,然后在另一个窗口输入命令shutdown –h now将机器关机重新开机后,我们发现tt的文档里同样是没有保存上一次编辑的内容,同样在文件夹中,生成了.tt.swap的文件。此时运行vim –r tt,则会发现打开的新文件是上次关机前编辑但是未保存的内容,输入:wq!则可以恢复上次编辑的文档同样,保存后,下一次在此打开的时候,还是会出现如下的窗口,但是此时我们发现选项里多了一个D选项,delete it。按下D选项后,我们会进入上次恢复保存的文档里,在此编辑保存退出。下次编辑,我们文件夹下的.tt.swap已经丢失了,不会再出现如下的窗口。![](http://upload-images.jianshu.io/upload_images/6943703-11de87f2c078da54.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
情况三:
直接在虚拟机中将物理机关机,不通过命令来关机,模拟的是异常断电。该情况和情况二的恢复情况一样,通过vim –rtt来恢复,保存后再次编辑的时候把这个.swap文件删除即可
总结
可能会有各种莫名的未保存就退出编辑页面的情况,如果要恢复,注意窗口的提示,不要将本来的有的信息覆盖了,这样还不如不要恢复。因为可能这个文件等到要恢复的时候已经被多次编辑并保存了,这个时候恢复swap文件,可能导致丢失大量的信息,得不偿失。友情提醒:恢复前务必要注意看提示进行恢复操作!相关文章推荐
- Java使用PDFBox开发包实现对PDF文档内容编辑与保存
- “Word自动更改后的内容保存到通用文档模板上。是否加载该模板?“的解决办法
- Java使用PDFBox开发包实现对PDF文档内容编辑与保存
- LIN线中的节点信号配置,在文档里直接填写内容即可,DEMO版不可保存
- (c#) Word文档的上传,保存,检索内容文字,转化成HTML 及(在检索 COM 类工厂 错误 80070005 解决方案)
- excel保存时出现“请注意,您的文档的部分内容可能包含了文档检查器无法删除的个人信息”
- Ueditor编辑保存的内容网页显示时背景等信息无效果---参考UEditor官方文档之编辑内容展示
- wps文档内容被删除如何恢复
- 网文快捕(CyberArticle) 快速保存网页内容,知识文档管理利器
- cookie 暂时保存内容与恢复
- excel保存时出现“请注意,您的文档的部分内容可能包含了文档检查器无法删除的个人信息”
- 修改txt文档的内容并保存在新的txt文档中
- Office未保存文档恢复
- Ueditor编辑保存的内容网页显示时背景等信息无效果---参考UEditor官方文档之编辑内容展示
- 教你恢复Word2010中上次未保存的文档
- wps文档忘记保存关闭了怎么恢复
- NSIS ---使用nsDialogs创建自定义页面,并获取输入到控件中的内容保存到一个XML文档中
- ASP 把数据库内容生成Word文档保存到目录下
- XP中WORD文档关机未保存如何恢复
- ASP 把数据库内容生成Word文档保存到目录下