在GIO中查找已删除的文件位置
问题描述:
该文档说明移至垃圾箱的所有文件通常都存储在~/.local/share/Trash/files
中。从可移动媒体中删除文件是否有例外情况?它们是否存储在drive_root/.Trash-xxx
目录中?或者这种行为是否过时?在GIO中查找已删除的文件位置
如何在垃圾箱中找到文件的真实文件路径?我有一个GFileInfo
的列表,从g_file_enumerate_children
获得trash:///
uri。如果所有文件都存储在一个目录中很容易。但是恐怕这对于可移动驱动器可能会有所不同。
答
从可移动媒体有.Trash - $(user_id)文件夹,因此您必须获取所有安装的磁盘以及家庭垃圾桶。
在每个安装的设备(不是主文件夹)下,每个用户都有一个.Trash文件夹,用于删除某些内容。所以例如对于ID为1000的我的用户foo
(请参阅/etc/passwd
),您将不得不寻找.Trash-1000
文件夹。
这是AFAIK没有过时,只是想想oposite,文件必须被复制到您的家庭存储只是将它移到回收站...
对于第二部分,你可能会更好过在glib/gtk邮件列表上询问。
您能否提供一些链接给描述垃圾文件夹的可能位置的文档?我认为它已经过时,因为它在GIO文档中没有提到。 –
没有阅读它througly,只是有一瞥,但应包含所有你需要http://www.ramendik.ru/docs/trashspec.html – drahnr