【linux】使用swap文件恢复非正常关闭的文件
前言
使用vim的时候,文件编辑过程中可能会出现bug,导致非正常关闭。为了保存刚刚修改的内容,需要对文件进行恢复。
操作过程
1.查看目录文件
zrj@zrj-ThinkPad-E470:~/work/code/facedetection/src$ ll
total
drwxrwxr-x xxx xxx Sep : ./
drwxrwxr-x xxx xxx Sep : ../
-rw-rw-r-- xxx xxx Sep : facedet.cpp
-rw-r--r-- xxx xxx Sep : .facedet.cpp.swp
-rw-rw-r-- xxx xxx Sep : facedet_test.cpp
发现多了个swap文件。
2.问题描述
E325: ATTENTION
Found a swap file by the name ".facedet.cpp.swp"
owned by: xxx dated: Tue Sep ::
file name: ~xxx/work/code/facedetection/src/facedet.cpp
modified: no
user name: xxx host name: xxx-ThinkPad-E470
process ID: (still running)
While opening file "facedet.cpp"
dated: Tue Sep :: () Another program may be editing the same file. If this is the case,
be careful not to end up with two different instances of the same
file when making changes. Quit, or continue with caution.
() An edit session for this file crashed.
If this is the case, use ":recover" or "vim -r facedet.cpp"
to recover the changes (see ":help recovery").
If you did this already, delete the swap file ".facedet.cpp.swp"
to avoid this message. Swap file ".facedet.cpp.swp" already exists!
[O]pen Read-Only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort:
3.原因分析
a.文件非正常关闭;
b.另一个Terminal也在编辑同一个文件;
4解决方法
a.非正常关闭;
使用recover覆盖文件,再删除swap文件;
. vim -r facedet.cpp
. rm .facedet.cpp.swp
b.同时编辑同一个文件;
先关闭一个文件再编辑另一个,注意避免同时编辑同一个文件;
注意,修改文件时请注意避免同一个文件产生两个不同的版本。
参考
1.csdn博客;
完
【linux】使用swap文件恢复非正常关闭的文件的更多相关文章
- LINUX 下通过lsof恢复被误删除的文件
当Linux计算机受到入侵时,常见的情况是日志文件被删除,以掩盖攻击者的踪迹.管理错误也可能导致意外删除重要的文件,比如在清理旧日志时,意外地删除了数据库的活动事务日志.有时可以通过lsof来恢复这些 ...
- 在linux下使用debugfs恢复rm删除的文件
原理主要是删除的文件并没有实际上从硬盘上摸去,只是inode索引删除了相关的信息,因此只要找到刚删除文件的block上,就可以恢复已经删除的文件. 以下方法在ext3的文件系统上测试通过,ext2的没 ...
- Linux文件恢复利器 ext3grep与extundelete
介绍两款Linux文件恢复工具,ext3grep与extundelete,可能在关键时刻会有所帮助.ext3grep仅对ext3文件系统有效,extundelete对ext3与ext4文件系统都有效 ...
- 【详解】Linux的文件描述符fd与文件指针FILE*互相转换
使用系统调用的时候用文件描述符(file descriptor,简称fd)的时候比较多,但是操作比较原始.C库函数在I/O上提供了一些方便的包装(比如格式化I/O.重定向),但是对细节的控制不够. 如 ...
- MySQL 利用frm文件和ibd文件恢复表结构和表数据
文章目录 frm文件和ibd文件简介 frm文件恢复表结构 ibd文件恢复表数据 通过脚本利用ibd文件恢复数据 通过shell脚本导出mysql所有库的所有表的表结构 frm文件和ibd文件简介 在 ...
- 【温故而知新:文件操作】C#的文件读写相关
StreamReader类以及其方法ReadLine,Read,ReadToEnd的分析 首先StreamReader类的构造参数非常丰富在这里,我觉得最常用的就是StreamReader(Strea ...
- Linux上vi编辑文件非正常退出后文件恢复
Vim另存文件的命令为 编辑完文件后Esc,输入以下指令 :w filename 编辑文件时非正常退出,会生成.hello.txt.swp的文件,还有一些其他信息 恢复文件要使用以下命令: [keys ...
- 非正常关闭vi编辑器时会生成一个.swp文件
非正常关闭vi编辑器时会生成一个.swp文件 关于swp文件 使用vi,经常可以看到swp这个文件,那这个文件是怎么产生的呢,当你打开一个文件,vi就会生成这么一个.(filename)swp文件以备 ...
- linux extundelete 删除文件恢复
extundelete是基于Linux的一个数据恢复工具,它通过分析文件系统的日志,解析出所有文件的inode信息,从而可以恢复Linux下主流的ext3,ext4文件系统下被误删除的文件. [问题案 ...
随机推荐
- Java Selenium 笔记
目录一.基本语句 1.循环控制(break,continue) 3.字符的替换(replace,repalceFirst,replaceAll,regex) 4.字符串的连接("+" ...
- MongoDB(课时13 where条件过滤)
3.4.2.8 条件过滤 关系型数据库开发对于数据的筛选,想到的一定是where语句,MongoDB里面提供的是"$where". 范例:使用where进行数据的查询 db.stu ...
- spark必知必会的基本概念
首先我们从宏观的视角来窥视下大数据技术框架: 图1 大数据技术框架 从图1可以看出,数据源-数据收集-数据存储-资源管理,这是我们进行数据分析和处理的基本;图中的计算框架包括批处理.交互式分析和流处理 ...
- placeholder的使用
1.定义 placeholder 属性提供可描述输入字段预期值的提示信息 该提示会在输入字段为空时显示,并会在字段获得焦点时消失. 注释:placeholder 属性适用于以下的 <input& ...
- 算法笔记--STL中的各种遍历及查找(待增)
算法笔记 map: map<string,int> m; map<string,int>::iterator it;//auto it it = m.begin(); whil ...
- mysql 将一张表里的数据插入到另一张表
1. 表结构一样 insert into 表1 select * from 表2 2. 表结构不一样 insert into 表1 (列名1,列名2,列名3) select 列1,列2,列3 from ...
- 20170724wdVBA正则表达式提取答案到Excel
Public Sub RegExtractData() Dim StartTime, UsedTime StartTime = VBA.Timer Dim FilePath$ Dim FileName ...
- EBS Workflow参考资料
参考资料: How to send an email from oracle workflow process using an AdHocRole? Notification System APIs ...
- OC BLOCK和协议
一.BOLCK (一)简介 BLOCK是什么?苹果推荐的类型,效率高,在运行中保存代码.用来封装和保存代码,有点像函数,BLOCK可以在任何时候执行. block实际上是: 指向结构体的指针 BOLC ...
- SSH 远程端口转发
既然"本地端口转发"是指绑定本地端口的转发,那么"远程端口转发"(remote forwarding)当然是指绑定远程端口的转发. 还是接着看上面那个例子,ho ...