![n 个文件的模糊比较](https://linux22.com/image/126021/n%20%E4%B8%AA%E6%96%87%E4%BB%B6%E7%9A%84%E6%A8%A1%E7%B3%8A%E6%AF%94%E8%BE%83.png)
我想知道n个文件之间的个体差异,所以类似于这样:
parallel --tag 'diff {1} {2} | wc -l' ::: * ::: *
这里的一个大问题是二进制文件,单个巨型行与短行的计数相同。
如何生成 n 个文件的模糊差异?
答案1
用于ssdeep
生成哈希文件:
ssdeep `find . -type f` > hash
这将给出 90% <= 相似度 < 100% 的对:
ssdeep -m hash `find . -type f` | grep -E '9[0-9].$'
仅当长段(文件大小的 1% 左右的块)相同时,这才有效。