在 Ubuntu 16.04 中恢复 evince 会话

在 Ubuntu 16.04 中恢复 evince 会话

如何恢复 Ubuntu 16.04 系统崩溃之前在 Evince 中打开的文档?理想情况下,我希望找到崩溃前打开的文件列表。至少,我希望找到某种历史记录。

我在另一台计算机上进行了崩溃模拟,发现在意外关机后打开 evince 后它确实提供了“最近查看的文件”列表。Ubuntu 16.04 中最近打开的(在 Evince 中)文件列表存储在哪里?我还可以提取每个文档的打开日期或至少打开它们的顺序吗?

我尝试使用gvfs 信息,但产生的结果看起来相当不系统:它既显示很久以前打开但最近从未打开过的文件,也没有显示崩溃会话期间打开的文件。有没有更有效的方法財產協會为了我的目的?

答案1

Evince 3.18.2(当前 Ubuntu 16.04 附带的版本)使用 Gtk 的机制将最近使用的文件存储在 中.local/share/recently-used.xbel

您可以直接读取该 XML 文件,也可以使用 Gtk 方法来解释它,例如使用 Python:python2 -c "import gtk; print('\n'.join([o.get_uri() for o in gtk.RecentManager().get_items() if o.get_mime_type()=='application/pdf']))"

查看GNOME 文档用于后一种方法的文档(以及获取文件上次访问的时间戳的方法等)

相关内容