Linux命令:md5sum创建MD5哈希值,比较两个文件是否相同
Lasted 2020-01-04 11:29:50
md5sum用于计算与校验RFC 1321所描述的128位MD5哈希值,可以作为文件的数字指纹使用。
因为MD5算法安全性已遭质疑,如果安全性要求很高,应使用sha256sum哈希值工具。
语法格式
md5sum [OPTION] [FILE]
常用选项
-b
二进制模式读取文件。-t
把输入的文件作为文本文件。-reload
从指定文件中读取MD5,并进行校验。--status
验证成功时不输出任何信息。-w
校验不正确时给出警告信息。
常用命令
创建MD5文件
1. 创建docsxyzA.txt和docsxyzB.txt的哈希文件hash.md5
md5sum docsxyzA.txt docsxyzB.txt > hash.md5 cat hash.md5
002fd687f16b84fe8a65075bdbf0c994 docsxyzA.txt dd88a18984f2a77631c99eaf4652921a docsxyzB.txt
检测MD5值
2. 检测hash.md5文件中对应的文件哈希值是否发生变化
md5sum -c hash.md5
docsxyzA.txt: OK docsxyzB.txt: OK #如果docsxyzA.txt发生变化 docsxyzA.txt: FAILED docsxyzB.txt: OK md5sum: WARNING: 1 computed checksum did NOT match
只显示MD5变化的文件
3. 如果有很多文件需要检测,怎样只显示MD5有变化的文件呢,需要添加 --quiet 参数。
md5sum -c --quiet hash.md5
docsxyzA.txt: FAILED md5sum: WARNING: 1 computed checksum did NOT match
检测单个文件
echo 'D43F2404CA13E22594E5C8B04D3BBB81 filetohashA.txt' | md5sum -c
filetohashA.txt: OK