首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >相同的内容文件,MD5值不同

相同的内容文件,MD5值不同
EN

Stack Overflow用户
提问于 2017-03-28 20:43:26
回答 1查看 1.6K关注 0票数 0

我们知道,两个不同的文件(即使它们的内容相同)的md5是不同的,就像这样:

代码语言:javascript
复制
[langshiquan@cp01-rdqa-dev002.cp01.baidu.com md5test]$ ll
total 16
drwxrwxr-x  7 langshiquan langshiquan 4096 Mar 28 19:41 output
drwxrwxr-x  3 langshiquan langshiquan 4096 Mar 28 19:44 test
-rw-rw-r--  1 langshiquan langshiquan  100 Mar 28 19:54 test.sh
-rw-rw-r--  1 langshiquan langshiquan   69 Mar 28 19:48 test.sh~
[langshiquan@cp01-rdqa-dev002.cp01.baidu.com md5test]$ sh test.sh
[langshiquan@cp01-rdqa-dev002.cp01.baidu.com md5test]$ md5sum output.tar
2b7f05590cd4c8665dd61bbf745bbeee  output.tar
[langshiquan@cp01-rdqa-dev002.cp01.baidu.com md5test]$ sh test.sh
[langshiquan@cp01-rdqa-dev002.cp01.baidu.com md5test]$ ll
total 18212
drwxrwxr-x  7 langshiquan langshiquan     4096 Mar 28 19:41 output
-rw-rw-r--  1 langshiquan langshiquan 18606080 Mar 28 19:54 output.tar
drwxrwxr-x  3 langshiquan langshiquan     4096 Mar 28 19:44 test
-rw-rw-r--  1 langshiquan langshiquan      100 Mar 28 19:54 test.sh
-rw-rw-r--  1 langshiquan langshiquan       69 Mar 28 19:48 test.sh~
[langshiquan@cp01-rdqa-dev002.cp01.baidu.com md5test]$ md5sum output.tar
3601eff99bc78198b152b04ca94c53d0  output.tar

test.sh脚本外壳:

代码语言:javascript
复制
#! bin/bash
cp -rp output ./test/
echo "1" > ./test/output/a.txt
tar -cf output.tar ./test/* -C ./

我在网上搜索了很长一段时间。但是没有用。请帮助或尝试给出一些如何实现这一目标的想法。

Q1.所以我想是否有一个类似于MD5的散列函数(例如,我只叫它"HashStr"),它使相同内容但不同属性的文件具有相同的"HashStr“。

Q2.或者,当我们可以生成MD5时,如何排除文件的属性以生成相同的TAR?

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2017-03-28 22:01:02

如果文件是相同的,那么散列也是相同的。如果属性(而不是文件内容)不同,则需要在散列之前将属性添加到文件。将要包含的属性放入一段文本中,并将其添加到文件中。然后将属性+文件作为单个数据进行散列。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43069954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档