Если я выберу значок в «Наутилусе» и выберу «Свойства», я могу щелкнуть значок, представленный там. Это дает мне диалог выбора файла для выбора нового изображения значка.
Я хотел бы сделать это с помощью какого-либо сценария, чтобы я мог назначить один и тот же значок нескольким файлам одновременно. Или возьмите список значков и список файлов и назначьте их друг другу.
Есть ли способ, которым я могу это сделать? Что-то в bash или Python было бы здорово, но я возьму то, что смогу получить.
Обратите внимание:
Чтобы изменить эти значки из командной строки, вы можете использовать следующую команду:
gvfs-set-attribute -t string /path/to/your/file metadata::custom-icon file:///path/to/your/icon.png
Вы можете использовать эту команду в сценарии bash в соответствии с вашими потребностями.
Если вы запускаете команду, и значок не меняется сразу, вы можете установить пакет xautomation с помощью:
sudo apt-get install xautomation
И, наконец, используйте команду «xte» для «sendkey» в bash например «F5» , чтобы обновить ..
Небольшой пример:
#!/bin/bash
gvfs-set-attribute -t string /home/hermes/testicon metadata::custom-icon file:///home/hermes/Desktop/applet_blank.png
sleep 3
xte "key F5"
Надеюсь, это будет полезно для вас.
Ответ Романа выглядит идеально. Есть еще один менее элегантный способ. Я не уверен, где находятся значки в остальной части системы, но значки, которые находятся на вашем рабочем столе, - это просто небольшие текстовые файлы в $ HOME / Desktop. Обычно (но не обязательно) они имеют расширение .desktop. Одно из полей в этих файлах - Icon = .... Вы можете использовать программу, чтобы изменить любое значение этого поля на любое значение по вашему выбору. (Возможно, вам придется выполнить обновление после того, как вы сделаете это, как предлагает Роман.)
Когда я хочу использовать значок для чего-то еще или в другой системе, я иногда смотрю в эти файлы .desktop, чтобы узнать, что значок в используется имя.
Спецификации для этих файлов находятся по адресу: http://www.freedesktop.org/wiki/Specifications/desktop-entry-spec
Джо
Поскольку инструменты gvfs устарели, вам следует использовать вместо них gio
!
Команды очень похожи на описанные выше.
Например, если вы хотите получить информацию о наборе значков, используйте
gio info ~/path/to/your/dir/or/folder | awk '{/custom-icon/ print $2}' | cut -c8-
Это выводит полный путь к значку, предполагая, что вы создали настраиваемый значок. Чтобы установить собственный значок, просто используйте команду
gio set -t string /path/to/your/dir/or/folder metadata::custom-icon file:///path/to/your/icon.svg