桌面图标位置(以编程方式访问和操作)

我想以编程方式访问和操作桌面图标位置,图标等。

这适用于〜/ Desktop中的文件和目录。

这些东西存放在哪里?

存储为GVFS元数据属性。

获取文件/目录的所有GVFS元数据属性:

gvfs-info '/home/user/Desktop/Untitled Folder/' 

要获取特定属性 – 图标位置:

 gvfs-info -a 'metadata::nautilus-icon-position' '/home/user/Desktop/Untitled Document/' 

设置图标位置:

 gvfs-set-attribute -t string '/home/user/Desktop/Untitled Document/' 'metadata::nautilus-icon-position' '500,500' 

请记住刷新桌面(F5键)以查看效果。

如果需要更低级别的操作,则有Nautilus Extension API(通过libnautilus):

https://developer.gnome.org/libnautilus-extension/stable/

特别是:

https://developer.gnome.org/libnautilus-extension/stable/NautilusFileInfo.html