帮助!我没有cp -Rf dir dir.bak
备份我的活动项目,而是rm -Rf dir dir.bak
。它并没有比这更糟糕:(
我在我的ext3分区上运行extundelete --restore-directory
并恢复了我的一些目录。
我的希望是我还有vim打开。 vim是否将每个文件的内容保存在内存缓冲区中,即使不在该vim选项卡中也是如此?我打开了两个vim标签,每个标签大约有6个窗口。完全,我将丢失30个源文件:(
当基础目录被删除后,有没有办法在vim中执行:wa!
?如果我重新创建基础目录,vim仍然无法保存文件我猜是因为打开文件的inode无效。
有没有办法可以将我在vim中打开的所有缓冲区保存到新目录中?我不知道缓冲区包含的文件的表示形式。如果我切换vim标签(我还没有),它会尝试从磁盘重新读取这些文件吗?
vim内外的任何创意解决方案都非常感谢!!
答案 0 :(得分:1)
如果重新创建文件夹,它应该有效。如果文件在缓冲区中打开,则它们在内存中。缓冲区只存储保存文件名的路径。 Inode是文件系统特定的实现细节,vim对此一无所知。
如果目录树不是很难重新创建,您可以尝试:wa
,直到重新创建所有丢失的文件夹。
答案 1 :(得分:0)
对于意外删除内容的问题,我已经完成了alias rm=trash-put
,这会将已删除的文件放入垃圾箱,以便日后检索。我从这里得到了这些信息:http://www.webupd8.org/2010/02/make-rm-move-files-to-trash-instead-of.html