不要重启浏览器或按返回按钮!
在Linux上:
这种解决方案很可能会失败,并且可以在Linux上运行。简而言之:转储Firefox进程的内存,并在其中搜索文本片段。这很丑,但这是您的不得已的方法。
首先,使用该gcore
实用程序转储核心,该实用程序需要安装gdb(GNU调试器):
$ ps -e | grep firefox
7089 ? 00:02:23 firefox
$ gcore 7089
[New Thread 0xa8ffeb70 (LWP 8924)]
[New Thread 0xb25feb70 (LWP 8531)]
[New Thread 0x9d7feb70 (LWP 8527)]
... snip ...
[New Thread 0xb5ffeb70 (LWP 7099)]
[New Thread 0xb67ffb70 (LWP 7098)]
[New Thread 0xb72f8b70 (LWP 7097)]
Saved corefile core.7089
请注意,核心转储可能会占用数百兆的磁盘空间。
如果成功,您现在可以松一口气。如果您的文本偶然在内存中徘徊,那么它已被捕获到核心转储中。
现在,尝试记住您文章中的短语(例如,“深刻影响”),并使用grep
它来查看文档中是否存在该短语:
$ grep 'a profound effect' core.7089
Binary file core.7089 matches
如果您得到“二进制文件...匹配项”,那就好了!如果不是,请尝试更多短语。如果您的所有grep
尝试都产生了空的输出,那么您的文章可能就永远消失了,您对此无能为力。(您可以尝试grep -R 'a profound effect' ~/.mozilla
,但我怀疑它会起作用)
假设您确实有匹配项,那么下一个任务是将包含您要查找的文本的核心转储片段切成薄片,并用less
它直观地查看它:
$ grep -B 20 -A 20 -a 'a profound effect' core.7089 > /tmp/out
$ less /tmp/out
(您可以省略第一行,只说less core.7089
,但我发现less
在搜索如此大的二进制文件时,这会消耗大量内存。)
现在,键入/a profound effect
,按Enter键,等待并向下翻页,直到看到可识别的内容:
am! 如果您不喜欢此结果,请输入“ n”查看是否还有其他结果。另外,请确保对垃圾进行校对,以免最终导致发布:
我的头脑常常会用这种语言产生糊涂的想法。
我想它像这样被破坏了,因为保存您的论文片段的内存不再分配,并且被后续分配践踏。
在Windows上:
程序是一样的。首先,创建Firefox的核心转储。这可以在任务管理器中完成。用英语,菜单项是Create Dump File。
倾销需要几秒钟。
然后,使用http://mh-nexus.de/en/hxd/之类的十六进制编辑器打开转储,并搜索丢失的文本。