我使用Md5sum命令,我获得二进制格式的文件内容我希望在文件中没有相同内容的情况下获得结果例如
$ md5sum file1 file2 file3 file4
c8675a129a538248bf9b0f8104c8e817 file1
9d3df2c17bfa06c6558cfc9d2f72aa91 file2
9d3df2c17bfa06c6558cfc9d2f72aa91 file3
2e7261df11a2fcefee4674fc500aeb7f file4
我希望输出在文件中不匹配,这意味着我需要file1和file2。
c8675a129a538248bf9b0f8104c8e817 file1
2e7261df11a2fcefee4674fc500aeb7f file4
那个文件的内容在另一个文件中不一样那个文件只有我需要
感谢提前
您可以说:
md5sum file1 file2 file3 file4 | uniq -u -w33
以便获得唯一的文件。
引用man uniq
:
-u, --unique
only print unique lines
编辑:你似乎在寻找其他选择。尝试
md5sum ... | sed ':a;$bb;N;/^(.).*n1[^n]*$/ba;:b;s/^(.).*n1[^n]*n*//;ta;/./P;D'
试试这个:BASH
find -type f -exec md5sum '{}' ';' | sort | uniq --all-repeated=separate -w 33 | cut -c 35-
解释:
查找所有文件,计算它们的MD5SUM,通过比较MD5SUM查找重复文件,打印名称
点击此处阅读更多