我正在使用Md5sum命令,我以二进制格式获取文件内容 我希望结果在文件中没有相同的内容 例如
$ md5sum file1 file2 file3 file4
c8675a129a538248bf9b0f8104c8e817 file1
9d3df2c17bfa06c6558cfc9d2f72aa91 file2
9d3df2c17bfa06c6558cfc9d2f72aa91 file3
2e7261df11a2fcefee4674fc500aeb7f file4
我希望输出在文件中不匹配 我需要file1和file2。
c8675a129a538248bf9b0f8104c8e817 file1
2e7261df11a2fcefee4674fc500aeb7f file4
该文件内容与另一个文件中的文件内容不相同,只有我需要的文件
提前致谢
答案 0 :(得分:2)
你可以说:
md5sum file1 file2 file3 file4 | uniq -u -w33
以获取唯一文件。
引用man uniq
:
-u, --unique
only print unique lines
md5sum ... | sed ':a;$bb;N;/^\(.\).*\n\1[^\n]*$/ba;:b;s/^\(.\).*\n\1[^\n]*\n*//;ta;/./P;D'
答案 1 :(得分:1)
试试这个:BASH
find -type f -exec md5sum '{}' ';' | sort | uniq --all-repeated=separate -w 33 | cut -c 35-
<强>解释强>
查找所有文件,计算MD5SUM,通过比较MD5SUM查找重复项,打印名称
了解更多here