如何在Nautilus中重新生成特定的缩略图?


9

有时我会裁切PDF,以使阅读一页而不是扫描两页。但是,鹦鹉螺会保留显示前首页的旧缩略图。

我知道我可以删除隐藏的缩略图文件夹,但是我想知道如何重新生成一个特定的缩略图。F5没有帮助。


1
我用了这个技巧进入命令行并执行a mv file newfile,稍等片刻,然后mv newfile file。曾经工作。
Rmano

Answers:


8

根据freedesktop文档“ 缩略图管理标准” 。如果缩略图中的mtime (修改时间)小于原始文件中的mtime,则可以强制nautilus重新创建缩略图。

  1. 检测修改

重要的一点是要确保缩略图图像仅在缩小版本中显示与原始图像相同的信息。为了使之成为可能,我们使用存储在必需的“ Thumb :: MTime”键中的修改时间,并检查它是否等于原始文件的当前修改时间。如果没有,我们必须重新创建缩略图。

例子2.检查修改的算法。

如果(file.mtime!= thumb.MTime){recreate_thumbnail(); }

仅执行file.mtime> thumb.MTime检查是不够的。如果用户将另一个文件移到原始文件上,该文件的mtime发生了变化,但实际上低于mtime存储的缩略图,则我们将无法识别此修改。

为了实现这一目标...您可以尝试使用一些Nautilus脚本,使用touch命令将原始文件中的mtime设置为当前时间。

1)创建脚本。打开一个终端窗口Ctrl+ Alt+ T和类型:

对于Ubuntu 12.04和12.10

  • nano ~/.gnome2/nautilus-scripts/Regenerate-Thumbnail

对于Ubuntu 13.04及更高版本

  • nano ~/.local/share/nautilus/scripts/Regenerate-Thumbnail

2)脚本的内容。

#!/bin/bash

BAKIFS=$IFS
IFS=$'\n'

for FILE in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
      touch -m "$FILE"
done

IFS=$BAKIFS

要将更改保存在nano .. Ctrl+中OEnter然后按Ctrl+ X

3)使脚本可执行。

对于Ubuntu 12.04和12.10

  • chmod +x ~/.gnome2/nautilus-scripts/Regenerate-Thumbnail

对于Ubuntu 13.04及更高版本

  • chmod +x ~/.local/share/nautilus/scripts/Regenerate-Thumbnail

4)要测试脚本,您可以打开nautilus,选择一个文件,右键单击并转到 Scripts> Regenerate-Thumbnail

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

希望这可以帮助。


4

我知道这是一个古老的问题,但是...有时缩略图会卡住,touch -m或者没有窍门mv使其再生。

写这个简单的脚本(由于这个答案),让我们称之为find-gnome-thumbnail

#! /bin/bash 
#
fn=$(echo -n "$1" | md5sum | awk '{print $1}')
find $HOME/.cache/ -name "$fn*" 2> /dev/null

并为其提供要确定其缩略图位置的文件的规范名称。更好的方法是在nautilus,do ctrlC和终端写入find-gnome-thumbnail '(带有空格和开头的单引号)中选择文件,然后 选择shiftctrlV;添加结束语,您将得到以下内容:

 % ./find-gnome-thumbnail 'file:///home/romano/tmp/0101_IM_3026506.pdf' 
/home/romano/.cache/thumbnails/large/d090cf90d2ac3f8127f62043f06b66df.png

现在,您可以删除有问题的缩略图,它将重新生成(如果不是单独发生,请按F5键)。复制粘贴技巧可以处理奇怪的字符转换:

 % ./find-gnome-thumbnail 'file:///home/romano/tmp/lalla%20(copy).pdf'
 /home/romano/.cache/thumbnails/large/28864dd40fab6d4982e1b103365574da.png

如果您使用来重命名文件,有时脚本会失败mv,但我不知道为什么---但大多数情况下都可以。另外,手动删除缩略图不会立即重新生成它---再次,我感到茫然。


2

我有一个使用的脚本(作者不详)称为“自动缩略图”,可以很好地完成此工作。我是从这里获得的脚本包中得到的

并安装在/ usr / share / nautilus-scripts /中,我还安装了Nautilus脚本管理器,这样,当我右键单击一个图标时,就不必在脚本菜单上全部看到它们,只需我使用的图标即可。


0

简化答案(基于@Roman Raguet)

  1. 开放终端
  2. 转到文件所在的文件夹,例如, /home/me/myimages
  3. 执行 touch -m

    • 例如,对于单个文件, touch -m myfile.jpg
    • 或所有文件, touch -m *

现在,应该在您的鹦鹉螺中重新生成缩略图。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.