![寻找一种可以快速查找已知文件重复项的工具](https://linux22.com/image/1175036/%E5%AF%BB%E6%89%BE%E4%B8%80%E7%A7%8D%E5%8F%AF%E4%BB%A5%E5%BF%AB%E9%80%9F%E6%9F%A5%E6%89%BE%E5%B7%B2%E7%9F%A5%E6%96%87%E4%BB%B6%E9%87%8D%E5%A4%8D%E9%A1%B9%E7%9A%84%E5%B7%A5%E5%85%B7.png)
到目前为止,我已经使用该工具fdupes
查找文件的所有重复项,但这似乎不起作用。我尝试这样做:
fdupes -r ~/Large_directory file_to_find.txt
首先,我刚刚启动此命令后收到以下消息:
fdupes:无法 chdir 到 file_to_find.txt。
因此,一启动,我的语法就已经有错误了。
其次,该命令需要很长时间(必须建立一个索引,这确实非常慢)。
所以我正在寻找替代工具。
谁能告诉我另一个工具,可以快速找到给定目录及其所有子目录中给定文件的所有重复项?
欢迎任何建议/帮助。
答案1
循环方法:
b="$(md5sum file_to_find.txt | cut -d' ' -f1)"
shopt -s globstar
for f in ~/Large_directory/**/*.txt; do
[[ "$(md5sum "$f" | cut -d' ' -f1)" = "$b" ]] && realpath "$f"
done