我打开了Emacs,但我意外地删除了它启动时读取的.emacs文件。这代表了大约15年的调整。(我知道,我知道,备份。)
有没有办法让Emacs写出我删除的.emacs文件?
我通常不会问这么差劲的问题,但我知道离这个Emacs会议结束只有一天左右的时间了。
发布于 2011-08-31 08:52:13
正如ayckoster建议的那样,您可以尝试文件恢复或取证工具,如The Sleuth Kit。或者,这看起来很疯狂,如果你在一个类似Unix的系统上,你可以搜索原始磁盘设备(在我现在使用的Mac上,它是/dev/rdisk1)。说真的,有几次我懒得破解一个成熟的恢复工具,而是使用像sudo less -f /dev/rdisk1这样的东西,搜索一个我知道在文件中的字符串(global-set-key,有人吗?),然后成功地恢复了文件的原始内容。
发布于 2011-08-31 06:51:41
如果您启用了Emacs的备份功能,那么您应该在~/ .emacs ~中有一个倒数第二个.emacs文件的副本。如果是这样,只需将该文件重命名为" .emacs“,您将获得包含除最新更改之外的所有更改的.emacs文件。即使您当前没有启用备份,在文件的最后一次备份中,您的.emacs文件可能仍有相当大的一块。您还应该查看变量“backup - directory -isn”的值-它指定了在不使用默认目录(与修改后的文件相同的目录)时存储备份文件的位置。
否则,你的记忆力有多好...;-)
编辑:由于您没有.emacs文件的备份,但是您有一个正在运行的.emacs实例,该实例是用该Emacs文件启动的,因此您可以做的另一件事是保存在.emacs文件中定义的所有自定义设置。要执行此操作,请执行以下操作:
(setq custom-file "/my/home/directory/.emacs-custom.el")
(custom-save-all)然后,您可以创建一个新的.emacs文件,并向其中添加以下行:
(setq custom-file "/my/home/directory/.emacs-custom.el")
(load custom-file)这至少会恢复.emacs文件中的一些自定义变量设置。
发布于 2011-08-31 07:15:35
Emacs评估您的.emacs文件,然后将其关闭。所以基本上你不能拿回你的.emacs。
解决方案可能是使用文件恢复应用程序。你的.emacs在你的硬盘上的机率是相当高的。
因为大多数这样的程序不能推断出被删除文件的文件名或目录名,所以你必须知道你的.emacs的内容。
然后,您可以恢复某个文件夹中当前删除的所有文件,并递归搜索.emacs中的内容。
这个过程可能需要很长时间。你必须决定这是否值得你的努力。
https://stackoverflow.com/questions/7250621
复制相似问题