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

md5sum命令采用MD5报文摘要算法(128位)计算和检查文件的校验和。一般来说,安装了Linux后,就会有md5sum这个工具,直接在命令行终端直接运行。

语法

# md5sum(选项)(参数)

选项

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

参数

文件:指定保存着文件名和校验和的文本文件

示例
1) 查看一个字符串的md5值 
在线查看字符串的md5值地址: https://md5jiami.51240.com/
linux终端里查看出来的md5值都是"32位小写"格式的值

[root@web-master ~]# echo -n "hello world"|md5sum
5eb63bbbe01eeed093cb22bb8f5acdc3 - [root@web-master ~]# echo -n "hello world"|md5sum |cut -d" " -f1
5eb63bbbe01eeed093cb22bb8f5acdc3

命令解释:
md5sum: 显示或检查 MD5(128-bit) 校验和,若没有文件选项,或者文件处为"-",则从标准输入读取。
echo -n : 不打印换行符。(注意: echo -n 后面的-n参数必须加上, 这样算出的字符串的md5值才正确)
cut: cut用来从标准输入或文本文件中剪切列或域。剪切文本可以将之粘贴到一个文本文件。 -d 指定与空格和tab键不同的域分隔符。-f1 表示第一个域。

2) 查看一个文件的md5值

[root@web-master ~]# echo "test md5" > kevin.sql

查看并获取这个文件的md5值
[root@web-master ~]# md5sum kevin.sql
170ecb8475ca6e384dbd74c17e165c9e kevin.sql [root@web-master ~]# md5sum kevin.sql|cut -d" " -f1
170ecb8475ca6e384dbd74c17e165c9e 生产这个个文件的md5值
[root@web-master ~]# md5sum kevin.sql > kevin.sql.md5 检查两个文件是否一样,可以通过比较两个文件的md5值 (后续可以用这个方法来检验kevin.sql文件是否被修改)。
[root@web-master ~]# md5sum kevin.sql
170ecb8475ca6e384dbd74c17e165c9e kevin.sql [root@web-master ~]# cat kevin.sql.md5
170ecb8475ca6e384dbd74c17e165c9e kevin.sql

linux下md5sum用法 (查看文件或字符串的md5值)的更多相关文章

  1. MD5算法【计算文件和字符串的MD5值】

    1. MD5算法是一种散列(hash)算法(摘要算法,指纹算法),不是一种加密算法(易错).任何长度的任意内容都可以用MD5计算出散列值.MD5的前身:MD2.MD3.MD4.介绍工具:CalcMD5 ...

  2. win7和linux下利用命令查看文件md5、sha1、sha256

    win7 certutil -hashfile <filename> MD5 certutil -hashfile <filename> SHA1 certutil -hash ...

  3. [转帖]linux下使用 du查看某个文件或目录占用磁盘空间的大小

    linux下使用 du查看某个文件或目录占用磁盘空间的大小 du -ah --max-depth= 去年用过一次 后来忘记了.. 命令这个东西 熟能生巧.. https://www.cnblogs.c ...

  4. linux下automake用法

    linux下automake用法 2017年02月06日 09:21:14 阅读数:3684 标签: makemakefilegnulinux   作为Linux下的程序开发人员,大家一定都遇到过Ma ...

  5. 恢复Linux下被误删除的文件(笔记)

    恢复Linux下被误删除的文件 [root@xuegod63 ~]# mount /dev/cdrom /mnt/ 分一个区:sda4  查找:extundelete 分一个区:sda4  [root ...

  6. Linux下的tree命令 --Linux下目录树查看

    Linux下的tree命令 --Linux下目录树查看 有时我们需要生成目录树结构,可以使用的有ls -R,但是实际效果并不好 这时需要用到tree命令,但是大部分Linux系统是默认不安装该命令的, ...

  7. linux下为目录和文件设置权限

    摘:linux下为目录和文件设置权限 分类: Linux2012-05-09 03:18 7456人阅读 评论(1) 收藏 举报 linuxwordpressweb数据库serverfile linu ...

  8. (转)Linux下设置和查看环境变量

    原文地址:<Linux下设置和查看环境变量> Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1. 永久的:需要修改配置文件,变量永久生效. 2. 临时的:使用e ...

  9. Linux下jmap命令查看内存使用

    Linux下jmap命令查看内存使用 jmap -heap 1234(1234为进程号) jmap是JDK自带的一个工具,非常小巧方便,其支持参数如下: -heap       打印heap空间的概要 ...

随机推荐

  1. Java中sleep()与wait()区别(涉及类锁相关概念)

    在区别之前,我们首先先了解一下关于对象锁,类锁的相关概念(当时查阅的详细地址:http://www.importnew.com/20444.html,该作者对类锁和对象锁进行了详细的举例分析) 对象锁 ...

  2. spring boot thymeleaf

    引入支持 <dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spr ...

  3. J - Oil Skimming 二分图的最大匹配

    Description Thanks to a certain "green" resources company, there is a new profitable indus ...

  4. ZOJ 1259 Rails

    stack的应用 #include<iostream> #include<cstdio> #include<stack> using namespace std; ...

  5. FluentAPI详细用法

    设置主键 modelBuilder.Entity<x>().HasKey(t => t.Name); 设置联合主键 modelBuilder.Entity<x>().Ha ...

  6. prometheus比zabbix好在哪点?

    分享网易云轻舟微服务选择基于 Prometheus 开发微服务监控系统的考量: 开源 云原生 与微服务监控需求的匹配度很高 开源 Prometheus是CNCF(云原生计算基金会)旗下成熟的开源项目, ...

  7. [学习笔记]K-D Tree

    以前其实学过的但是不会拍扁重构--所以这几天学了一下 \(K-D\ Tree\) 的正确打开姿势. \(K\) 维 \(K-D\ Tree\) 的单次操作最坏时间复杂度为 \(O(k\times n^ ...

  8. es6新增Math方法

    Math.trunc()  用于去除一个数的小数部分,只返回整数部分 Math.trunc(4.1) // 4 Math.trunc(4.9) // 4 Math.trunc(-4.1) // -4 ...

  9. Linux的基本操作

    1.linux系统的基本命令 ls  查看当前所在文夹下的内容pwd  查看当前所在的位置cd  打开文件目录touch  创建文件, 如果文件不存在, 就创建新的文件mkdir 创建文件夹rm  删 ...

  10. Redis 入门知识

    Redis 的前世今生 Redis的诞生于2008年,由Salvatore Sanfilippo开发.最初作者在开发一个网站时,需要实现一个高性能的队列功能,在使用Mysql无果后,决定自己造一个轮子 ...