karthick87 Asked: 2011-05-03 01:22:57 +0800 CST2011-05-03 01:22:57 +0800 CST 2011-05-03 01:22:57 +0800 CST 如何从终端更改多个文件的图标? 772 我想从终端更改多个文件的图标。 不是启动器图标,而是基于文件结尾的文件类型的默认图标。 如何完成这项任务? command-line 1 个回答 Voted Best Answer Rinzwind 2011-05-28T09:07:07+08:002011-05-28T09:07:07+08:00 “标志”作为二进制文件存储在目录中~/.local/share/gvfs-metadata。 因此,您需要gvfs-bin 才能提取并保存它们。哦,每个分区/卷/目录/文件都有一个文件(让事情变得更糟)。 要获取有关标志的信息,您可以使用: gvfs-info -a metadata::emblems {filename|folder} 要为 {filename} 或 {folder} 设置 {icon},请使用: gvfs-set-attribute -t stringv {filename|folder} metadata::emblems {icon} 例子: 我在 ~/Music 中创建了文件夹 1、2、3、4。 图像终端内的命令: gvfs-set-attribute 1 metadata::custom-icon file:///usr/share/pixmaps/gnome-log.png gvfs-set-attribute 2 metadata::custom-icon file:///usr/share/pixmaps/gnome-spider.png 将 1 和 2 更改为现有的视频文件或任何其他实际文件,它应该可以正常工作。 F5 更新底部面板。 正如您可以从目录 3 和 4 中猜到的那样,您需要为每个您想要的文件执行此操作。 这是一个遍历目录并将驻留在文件夹中的 PNG 设置为文件夹标志的脚本(基本上这模仿了 Windowsfolder.png用作其上方目录标志的方法)。 #!/usr/bin/python 导入操作系统 从 os.path 导入加入 cwdir = str(os.popen('pwd').readline()).replace('\n','') 对于 os.walk(cwdir) 中的根目录、目录和文件: 对于文件中的名称: 如果 name.lower().find('.png') != -1: os.system('gvfs-set-attribute "'+root+'" metadata::custom-icon "'+name+'"') 您也许可以将其更改为您自己的包含文件的版本。 使用脚本需自担风险
“标志”作为二进制文件存储在目录中
~/.local/share/gvfs-metadata
。因此,您需要gvfs-bin 才能提取并保存它们。哦,每个分区/卷/目录/文件都有一个文件(让事情变得更糟)。
要获取有关标志的信息,您可以使用:
gvfs-info -a metadata::emblems {filename|folder}
要为 {filename} 或 {folder} 设置 {icon},请使用:
gvfs-set-attribute -t stringv {filename|folder} metadata::emblems {icon}
例子:
我在 ~/Music 中创建了文件夹 1、2、3、4。
图像终端内的命令:
gvfs-set-attribute 1 metadata::custom-icon file:///usr/share/pixmaps/gnome-log.png
gvfs-set-attribute 2 metadata::custom-icon file:///usr/share/pixmaps/gnome-spider.png
将 1 和 2 更改为现有的视频文件或任何其他实际文件,它应该可以正常工作。
F5 更新底部面板。
正如您可以从目录 3 和 4 中猜到的那样,您需要为每个您想要的文件执行此操作。
这是一个遍历目录并将驻留在文件夹中的 PNG 设置为文件夹标志的脚本(基本上这模仿了 Windows
folder.png
用作其上方目录标志的方法)。您也许可以将其更改为您自己的包含文件的版本。
使用脚本需自担风险