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


8

我想以编程方式访问和操纵“桌面”图标的位置,其图标等。

这适用于您保存在〜/ Desktop中的文件和目录。

这些东西存放在哪里?

Answers:


8

存储为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


这对于实际文件效果很好;是否还可以访问metadata::nautilus-icon-position出现在桌面上的USB驱动器,“主页”等专用图标?gvfs-info -a 'metadata::nautilus-icon-position' '/home/user/Desktop/External-drive'说“没有这样的文件或目录”。
Honore Doktorr

现在是gio info和命令gio set,例如在Ubuntu 18.04上。
戴维(David)

使用gio实用程序:获取文件/目录的所有元数据属性: gio info '/home/user/Desktop/Untitled Folder/' 设置图标位置: gio set --type=string '/home/user/Desktop/Untitled Folder/' 'metadata::nautilus-icon-position' '500,500'
PaulRM
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.