【问题标题】:Finding a specific hash in a large amount of files (within .rar bundle)在大量文件中查找特定哈希(在 .rar 包中)
【发布时间】:2011-12-17 12:15:51
【问题描述】:

是否有任何程序可以在硬盘驱动器上搜索特定的 MD5 哈希?我专门寻找可能位于 .zip 或 .rar 文件中的哈希值。

我已尝试为此编写 Python 脚本,但在某些非英文文件名方面存在问题。

那么……这样的东西已经存在了吗?希望免费和开源?

【问题讨论】:

    标签: windows linux scripting antivirus hard-drive


    【解决方案1】:

    我不确定是否理解:您想查找特定给定 MD5 和的文件,或者您想在磁盘上查找 MD5 字符串(即 32 个十六进制数字)?

    如果你想找到一个给定 MD5 和的文件(假设它是 01234a4d035addca808644a0163abcdef 这里),我会尝试运行(但这需要时间)一些东西来计算每个文件的 MD5,例如

    find -type f -exec md5sum '{}' \; > /tmp/allmd5sum.txt
    

    然后在里面寻找(例如fgrep 01234a4d035addca808644a0163abcdef /tmp/allmd5sum.txt)特定给定的MD5总和。

    当然,在运行 find 时要小心(请阅读其文档),尤其要避免像 /proc 甚至 /tmp 这样的文件树

    【讨论】:

    • 这看起来真的很接近!除了我递归地需要所有 .rar 和 .zip 文件中所有文件的 md5sum(因为那里可能有更多文件夹或压缩文件)。知道我们如何修改命令来做到这一点吗?
    • 您可以将文件解压缩或解压缩到一个临时目录中并递归其中的脚本。
    • 我有成百上千个 .rar 和 .zip 文件要处理...
    • 那又怎样?首先在其中的一个子集上试验您的脚本。而且您要求的是密集处理,因此需要一些时间。您的脚本可能会在完成后删除它提取 .zip 或 .rar 文件的临时目录。
    • 好的,所以这基本上是我从你给我的东西中得出的。我使用 sed 来创建要提取的临时目录,同时保留基本文件结构,这样我就知道每个文件的物理位置。 <pre>for foo in find . -name "*.rar";做 export temp=/tmp/echo $foo | sed 's:\.:^:g' | sed 's:/:=:g' && mkdir $temp && unrar x $foo $temp && find $temp -type f -exec md5sum '{}' \; >> /tmp/allmd5sum.txt && rm -rf $temp;完成;
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-22
    • 1970-01-01
    • 2015-11-11
    相关资源
    最近更新 更多