ファイルのアイコンをプログラムで変更するにはどうすればよいですか?


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」を使用して、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の拡張子を持ちます(ただし、そうする必要はありません)。これらのファイルのフィールドの1つはIcon = ....です。プログラムを使用して、選択した値に設定されているフィールドを変更できます。(これを行った後、Romanが示唆しているように、リフレッシュする必要があるかもしれません。)

他のシステムや他のシステムにアイコンを使用する場合、これらの.desktopファイルを調べて、使用中のアイコンの名前を確認することがあります。

これらのファイルの仕様は次の場所にあります。 http //www.freedesktop.org/wiki/Specifications/desktop-entry-specにあります。

ジョー

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.