Як я можу програмно змінити піктограму файлу?


16

Якщо я вибираю піктограму в Nautilus і вибираю властивості, я можу натиснути на представлений там значок. Це дає мені діалогове вікно вибору файлів для вибору нового зображення значка.

Я хотів би зробити це за допомогою якогось сценарію, щоб я міг призначити один і той же значок багатьом файлам одночасно. Або візьміть список піктограм та список файлів і призначте їх один одному.

Чи є якийсь спосіб я досягти цього? Щось у bash чи Python було б чудово, але я візьму те, що можу отримати.

Будь ласка, запиши:

  • Я не запитую, як змінити піктограму для типу файлу.
  • Я не запитую, як змінити піктограму на пусковій установці.

введіть тут опис зображення

Відповіді:


25


Щоб змінити ці значки з командного рядка, ви можете скористатися такою командою:

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"  

Сподіваюся, це вам корисно.


3

Відповідь Романа виглядає ідеально. Є ще один менш елегантний спосіб. Я не впевнений, де значки живуть у решті системи, але значки, які знаходяться на вашому робочому столі, - це лише маленькі текстові файли у $ HOME / Desktop. Зазвичай вони (але не повинні) мають розширення .desktop. Одне з полів у цих файлах - Icon = .... Ви можете використовувати програму, щоб змінити те поле, яке встановлено на вибране вами значення. (Можливо, вам доведеться зробити оновлення після цього так, як пропонує Роман.)

Коли я хочу використовувати піктограму для чогось іншого або в іншій системі, я іноді заглядаю в ці файли .desktop, щоб дізнатися, як називається використовуваний значок.

Характеристики цих файлів живуть за адресою: http://www.freedesktop.org/wiki/Specifications/desktop-entry-spec

Джо

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.