0

帮助!cp -Rf dir dir.bak我没有备份我的活动项目,而是备份了rm -Rf dir dir.bak. 没有比这更糟糕的了:(

extundelete --restore-directory在我的 ext3 分区上运行,它恢复了我的一些目录。

我希望我仍然打开 vim。vim 是否将每个文件的内容保存在内存缓冲区中,即使不在那个 vim 选项卡中?我打开了两个 vim 选项卡,每个选项卡中大约有 6 个窗口。总的来说,我将丢失 30 个源文件 :(

:wa!删除基础目录后,有没有办法在 vim 中执行?如果我重新创建底层目录,vim 仍然无法保存我猜想的文件,因为打开文件的 inode 无效。

有没有办法我仍然可以将我在 vim 中打开的所有缓冲区保存到新目录中?我不知道缓冲区包含的文件的表示形式。如果我切换 vim 选项卡(我还没有),它会尝试从磁盘重新读取这些文件,对吗?

非常感谢 vim 内外的任何创造性解决方案!

4

2 回答 2

1

对于不小心删除东西的问题,我已经做了alias rm=trash-put,将删除的文件放入垃圾箱,以备日后检索。我从这里得到了这些信息:http ://www.webupd8.org/2010/02/make-rm-move-files-to-trash-instead-of.html

于 2013-12-04T15:48:02.200 回答
1

如果您重新创建文件夹,它应该可以工作。如果文件在缓冲区中打开,则它们在内存中。缓冲区只存储保存文件名的路径。索引节点是文件系统特定的实现细节,vim 对此一无所知。

如果重新创建目录树不是很困难,您可以尝试:wa直到重新创建所有丢失的文件夹。

于 2013-12-03T00:35:59.020 回答