首先尝试从磁盘恢复无果; 但是 nvim 进程还在,cat /proc/xxx/fd/xxx 出来文件是乱码的。 我又尝试将 nvim 恢复前台,但发现这个进程已经不属于任何终端了。 有何办法从进程里恢复完整的文件?
ps 信息
6691 1 0 Apr10 ? 00:06:49 nvim database/database_kits.h
lsof 信息
nvim 6691 lkj 36u REG 252,1 12288 266629 /home/lkj/.local/share/nvim/swap/%home%lkj%code%license%src%license_service_impl.h.swp (deleted)
1
plasmetoz 2020-05-20 18:58:11 +08:00 1
不太乐观,swp 好像是修改记录,是差异文件,源文件也许在内存里还有?
可以看看这个: https://superuser.com/questions/204209/how-can-i-recover-the-original-file-from-a-swp-file/874677#874677 |
2
superrichman 2020-05-20 19:34:19 +08:00 via iPhone
装个 trash-cli 防止以后再误操作。
文件恢复不知道怎么办,听听楼下的。 |
3
May725 OP @plasmetoz 太感谢了。 将 swp 保存到默认路径,再新建源文件打开,vim 自动检测到 swp 文件恢复了,没有乱码。 😭
|
4
May725 OP @superrichman 这就装,rm 太吓人
|
5
systemcall 2020-05-20 20:21:50 +08:00 via Android
是生产环境吗?难道没有备份?
|
6
May725 OP @systemcall 不是,就开发环境
|
7
laycher 2020-05-20 21:06:13 +08:00
如果没有 swp 文件,还有办法不?
|