利用 Linux 查找重复文件
方法一:使用Find命令
本部分算是对find强大功能的扩展使用方法说明。在find的基础上,我们可与(如xargs命令)等其它基本Linux命令相结合,即能创造出无限的命令行功能,比如:可以快速查找出Linux某个文件夹及其子文件夹中的重复文件列表。
find -not -empty -type f -printf “%sn” 表示使用find命令搜索出所有非空文件,再打印出他们的大
小
sort -rn 命令是按文件大小进行反向排序
uniq -d | xargs -I{} -n1 find -type f -size {}c -print0 表示只打印了重复的行,这里使用代表打印出文件名相同的文件
uniq -w32 –all-repeated=separate 最后这里表示对MD5的前32个字节进行对比,以筛选出重复文
件 使用命令行的整个过程就是这么简单和容易。
方法二:使用Find命令解析
在工作生活当中,我们很可能会遇到查找重复文件的问题。比如从某游戏提取的游戏文本有重复的,我们希望找出所有重复的文本,让翻译只翻译其中一份,而其他的直接替换。
find -not -empty -type f -printf "%sn" | sort -rn |uniq -d | xargs -I{} -n1
find -type f -size {}c -print0 | xargs -0 md5sum | sort | uniq -w32 --all-
repeated=separate | cut -b 36-
cd到想要查找重复文件的文件夹,然后copy上面代码就可以了,系统会对当前文件夹及子文件夹内的所有文件进行查重。