仅禁用特定文件夹的缩略图创建,但禁用所有用户


12

如何防止Ubuntu 14.10(现在为15.04)仅为特定文件夹创建和保存缩略图?
我想告诉缩略图缩略图跳过该单个文件夹(和子文件夹),但跳过所有现有和将来的用户帐户。

我阅读了一些有关排除特定文件类型的回答问题,但我需要按文件位置排除文件!
我已经尝试过隐藏文件夹(重命名为.foldername),但是没有运气。顺便说一下,该文件夹归root拥有。


6
只是一个想法的开始(并且仅适用于单个用户):如果我理解正确,则通过对路径进行哈希处理并将名为[hash] .png的文件写入目录.thumbnails/normal/和/或目录中来创建缩略图.thumbnails/large/。用户的主目录。您的程序可以执行相同的哈希操作,而改写一个零字节的缩略图文件。运气好的话,缩略图例程会注意到缩略图文件已经存在,并跳过为图像添加缩略图的操作。
2015年

您使用什么缩略图?您在哪里保存缩略图?
daltonfury42

@ daltonfury42我不能告诉你。我特别需要此功能的情况是在一台旧的,现在已经死了的笔记本电脑上。我在那里运行带有XFCE的Ubuntu,所以我认为它是不倒翁的,但是它的缩略图被称为。无论如何,我认为如果可能的话,那应该是一个更通用的解决方案。
字节指挥官

Answers:


2

除了@Fabby答案:

  1. 安装软件包

    sudo apt-get install inoticoming
    
  2. 创建包装器脚本 disable_thumbnails

    #!/bin/bash
    
    # Create the thumbnail filename
    tn_filename=$(echo -n "file://$1/$2" | sed 's/\s/%20/g' | md5sum | awk '{print $1}')
    
    # Destroy the thumbnail without deleting
    find ~/.cache/thumbnails -type f -name "$tn_filename*" -print0 | while IFS= read -d '' file; do
      echo > "$file"
    done
    exit 0
    
  3. 使它可执行

    chmod +x disable_thumbnails
    
  4. 必要时终止正在运行的进程

    killall inoticoming
    
  5. 看你的文件夹

    避免/在文件夹名称中拖尾

    inoticoming "<path_to_disabled_thumbnail_folder>" <full_path_of_disable_thumbnails_script>  {} "<path_to_disabled_thumbnail_folder>" \;
    

只有一个问题。更改仅在之后可见nautilus -q

inoticoming --foreground …如果测试脚本,请使用以避免守护程序模式。


好吧,nautilus -q我猜这杀死了鹦鹉螺的后台进程并释放了缓存在内存中的缩略图。为什么\;inoticoming命令末尾有?
字节指挥官

@ByteCommander要掩蔽;我们,我们需要;在命令中而不是下一个命令的定界符。
AB

这是什么意思inoticoming --foreground _?守护程序模式有什么问题?我认为它应该在后台自动运行。哦,如何将它设置为自动启动?
字节指挥官

@ByteCommander要测试脚本,请使用--foreground
AB

2

要获取缩略图的文件名,请从md5sum原始文件名开始:

% echo -n "file:///home/user/Pictures/image%201.png" | md5sum
6e1669aea9c118cb2b7ad23fc6646c71  -

% find ~/.cache/thumbnails -type f -name "6e1669aea9c118cb2b7ad23fc6646c71*"
/home/user/.cache/thumbnails/large/6e1669aea9c118cb2b7ad23fc6646c71.png

现在删除读取权限:

chmod -r /home/user/.cache/thumbnails/large/6e1669aea9c118cb2b7ad23fc6646c71.png

重新启动鹦鹉螺:

nautilus -q

,您将没有的缩略图/home/user/Pictures/image 1.png

现在,您只需要编写一个脚本即可扫描您的特定文件夹并自动执行上述步骤。

学分 :P


如果您添加了该脚本,并且添加了一行代码,该行用0字节的文件覆盖了缩略图,那么我会很高兴的!哦,您必须告诉我(或链接)如何使脚本自动运行。最好是对该文件夹中的文件系统事件做出反应……如果我不知道该如何给你赏金,我想@AB必须这样做,因为他提供了它……
Byte Commander

@ByteCommander像这样
AB

@AB是的,看起来不错。如果您现在使用该脚本以及所有内容一起编写另一个答案,那就太好了!:-)
Byte Commander

@ByteCommander完成了:)
AB
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.