博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
md5对比文件
阅读量:6172 次
发布时间:2019-06-21

本文共 1606 字,大约阅读时间需要 5 分钟。

hot3.png

1、简介

  MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改。MD5 全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意长度的信息逐位进行计算,产生一个二进制长度为128位(十六进制长度就是32位)的“指纹”(或称“报文摘要”),不同的文件产生相同的报文摘要的可能性是非常非常之小的。

  在linux或Unix上,md5sum是用来计算和校验文件报文摘要的工具程序。一般来说,安装了Linux后,就会有md5sum这个工具,直接在命令行终端直接运行。

2、命令格式

  md5sum [OPTION]... [FILE]...

3、命令选项

-b 或 --binary :把输入文件作为二进制文件看待。 

-t 或 --text :把输入的文件作为文本文件看待(默认)。 
-c 或 --check :用来从文件中读取md5信息检查文件的一致性。(不细说了参见info) 
--status :这个选项和check一起使用,在check的时候,不输出,而是根据返回值表示检查结果。 
-w 或 --warn :在check的时候,检查输入的md5信息又没有非法的行,如果有则输出相应信息。

4、例子

(1)生产一个文件的md5值,如下所示:

[root www.linuxidc.com]# md5sum p182  > cc.txt

这样,就生产了文件p182的md5校验文件cc.txt,打开cc.txt可以看到如下内容:

[root www.linuxidc.com]# cat cc.txt 

dd05e55e3aca2d39e49a1a7d1b3fd404  p182

(2)检查两个文件是否一样,可以通过比较两个文件的md5值

[root www.linuxidc.com]# md5sum p182 > ee.txt

[root www.linuxidc.com]# cat ee.txt 
0f0b000b096ac947d6067466cc60ffd0  p182

[root www.linuxidc.com]# md5sum p183 > ff.txt
[root@linuxidc www.linuxidc.com]# cat ff.txt 
dd05e55e3aca2d39e49a1a7d1b3fd404  p183

(3)判断一个文件是否修改,通过md5来判断

[root@linuxidc www.linuxidc.com]# md5sum p182 > cc.txt
[root@linuxidc www.linuxidc.com]# cat cc.txt 
0f0b000b096ac947d6067466cc60ffd0  p182

 

修改下p182文件:

[root@linuxidc www.linuxidc.com]# vi p182

跟原来的md5结果进行对比:

[root@linuxidc www.linuxidc.com]# md5sum p182 -c cc.txt 
md5sum: p182: no properly formatted MD5 checksum lines found
p182: FAILED
md5sum: WARNING: 1 of 1 computed checksum did NOT match

修改后md5结果如下:

[root@linuxidc www.linuxidc.com]# md5sum p182 > dd.txt

[root@linuxidc www.linuxidc.com]# cat dd.txt 
521e87e3331e94a483aec6bf19039845  p182

转载于:https://my.oschina.net/zhangxc73912/blog/520761

你可能感兴趣的文章
svn : Can not Parse lock / entries hashfile错误解决办法
查看>>
Redis配置文件参数说明
查看>>
【linux】系统初始化的shell脚本
查看>>
jmeter之调度器配置
查看>>
PHP:错误 Deprecated: Function split() is deprecated in ... 解决办法
查看>>
mac 程序 Access-JSON-Data
查看>>
Android Immersive Mode (沉浸模式) 还是 Translucent Bars (透明状态栏)
查看>>
Window 分布式学习-好文收藏
查看>>
几种 Java 序列化方案的性能比较
查看>>
2015第48周四
查看>>
Ubuntu backlight
查看>>
使用sqlnet.ora限制IP访问
查看>>
一步步学习javascript基础篇(4):面向对象设计之创建对象(工厂、原型和构造函数等模式)...
查看>>
Hadoop源码分析之读文件时NameNode和DataNode的处理过程
查看>>
轻量级的内部测试过程r \\ u0026研发团队
查看>>
Ants(思维)
查看>>
手机万能遥控器制作教程
查看>>
xib添加手势后报错:-[UITapGestureRecognizer setFrame:]: unrecognized selector sent to instance xxx...
查看>>
数据库三大范式
查看>>
让ASP.NET Web API支持text/plain内容协商
查看>>