サムネイル画像の削除・探し方(gnome)
表示できるサムネイル画像の削除
Nautilus で表示されるサムネイル画像 (png) は~/.thumbnails/normalに保存されています。不要になったり再作成する必要があるときは、この中の画像ファイルを削除します。
表示できないサムネイル画像の再作成
たまにサムネイル画像の作成に失敗しますが、それは~/.thumbnails/fail/gnome-thumbnail-factoryに入ってます。この中の該当画像(分からなければ全て)を削除しない限り、再作成はされないようです。
サムネイル画像のファイル名
いずれのフォルダの中も「サムネイル画像のファイル名」からは、「元データのファイル名」を直接知ることはできません。ですが逆に「元データのファイル名」から「サムネイル画像のファイル名」を知ることはできます。 例えば元データが~/Desktop/abc.jpgの場合、サムネイル画像のファイル名は
$ echo -n "file:///home/username/Desktop/abc.jpg" | md5sum 1233f5db0e8416d30861275ad3a703c6 -というように、パスを展開し、先頭に
file://
を付けた文字列の md5 値、となっています。(echo
の -n
は、文字列の最後に改行を付けないためのオプションです。)
文字列中に日本語が入る場合は適当にエンコード(後述)する必要があり、file://
の部分は接続の仕方によっては smb://
などになることもあるようです。
また、各サムネイル画像ファイルの中には、tEXtThumb::URI
タグの中に md5 をとる前の文字列が記載されています。
日数やサイズの上限を決める
日数の上限は$ gconftool-2 --set /desktop/gnome-thumbnail_cache/maximum_age 180 --type int # 日数サイズの上限は
$ gconftool-2 --set /desktop/gnome-thumbnail_cache/maximum_size 512 --type int # サイズ (MByte)で指定可能です。 いずれも -1 を指定した場合はその機能をオフにできます。
追記 2018-10-25:適当にエンコード
Python で書けばこんな感じです。#!/usr/bin/env python #-*- coding:utf-8 -*- import sys def to_uri(filename): # [0-9A-Za-z._~i-] glib/g_string.c:is_valid() # !$&'()*+,;=:@ glib/gurifuncs.h:G_URI_RESERVED_CHARS_ALLOWED_IN_PATH_ELEMENT # / gio/glocalfile.c:g_local_file_get_parse_name unescape_chars = \ "0123456789" + \ "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + \ "abcdefghijklmnopqrstuvwxyz" + \ "-._~!$&'()*+,;=:@/" s = "" for ch in filename: if ch in unescape_chars: s += ch else: s += "%%%02X" % (ord(ch)) return s sys.stdout.write(to_uri(sys.argv[1]))実行例はこうなります。
$ to_uri.py file:///tmp/てすと.jpg file:///tmp/%E3%81%A6%E3%81%99%E3%81%A8.jpg $ to_uri.py file:///tmp/てすと.jpg | md5sum a2e7037ce9e0c953dc52b45d42fa6b32 -
0