我可以从命令行将文件标记为最近使用吗?

and*_*ley 3 linux nautilus thunar gtk files

GTK 应用程序通过将文件添加到~/.local/share/recently-used.xbel. GUI 文件浏览器/选择器等。

是否有 CLI 命令可用于将文件显式添加到“最近”列表中,以便在 Linux 使用的终端和 GUI 端之间进行平滑操作?无论是官方方式,还是具有写入recently-used.xbel文件的副作用的快速简单的 hack !

Ste*_*itt 6

以下 Python 脚本将使用 GIO 将作为参数给出的所有文件添加到最近使用的列表中:

#!/usr/bin/python3

import gi, sys
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk, Gio, GLib

rec_mgr = Gtk.RecentManager.get_default()

for arg in sys.argv[1:]:
    rec_mgr.add_item(Gio.File.new_for_path(arg).get_uri())

GLib.idle_add(Gtk.main_quit)
Gtk.main()
Run Code Online (Sandbox Code Playgroud)

最后两行是启动 Gtk 事件循环所必需的;如果您不这样做,则不会处理来自管理器的更改信号,并且不会将文件添加到最近使用的列表中。