给定两个根文件夹 A 和 B,
如何在 A 和 B 的子文件夹之间找到重复的文本文件?
换句话说,我正在考虑来自 A 和 B 的文件的交集。
我不想在 A 或 B 中查找重复文件,而只想在 A 和 B 中查找文件。
编辑
重复是指内容相同的文件
最佳答案
如评论部分所述,我将为每个文件生成一个 MD5 校验和,只生成一次 - 然后查找重复的校验和。
像这样:
find DirA -name \*.txt -exec md5sum {} + > /tmp/a
find DirB -name \*.txt -exec md5sum {} + > /tmp/b
现在找出两个文件中出现的所有校验和。
因此,沿着这些思路:
awk 'FNR==NR{md5[$1];next}$1 in md5' /tmp/[ab]
或者像这样:
awk 'FNR==NR{s=$1;md5[s];$1="";name[s]=$0;next}$1 in md5{s=$1;$1="";print name[s] " : " $0}' /tmp/[ab]
关于linux - 查找两个文件夹之间的共同文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38827243/