如何使用 diff 从目录中删除具有不同名称的重复文本文件?

How to remove duplicate text files with different names from a directory using diff?

我有一个包含一些文本文件的目录。这些文件可能没有独特的内容。我只想保留唯一文件并删除其他文件。

我尝试了以下方法:

diff -sr directory/ copy-of-directory/

哪个returns:
文件 directory/1.txt 和副本-directory/1.txt 相同
文件 directory/2.txt 和副本-directory/2.txt 相同
文件 directory/3.txt 和副本-directory/3.txt 是相同的...

但为什么不说(我确认 1.txt 和 2.txt 确实不同)
文件 directory/1.txt 和副本directory/2.txt 不同

这个怎么样:

find directory -type f | while read f1; do
  find copy-of-directory -type f | while read f2; do
    diff -s "$f1" "$f2" || rm -f "$f2"
  done
done