Linux命令(109)之md5sum

linux命令之md5sum

1.md5sum介绍

linux命令md5sum是用来计算和校验文件的MD5值。

另外:

md5sum是用来校验文件内容,与文件名是否相同无关

md5sum校验文件时,逐位校验,如果文件越大,校验所需时间就越长

2.md5sum用法

md5sum [参数] filename

|----------|-----------------------------|
| 参数 | 说明 |
| -b | 以二进制模式读入文件内容 |
| -t | 以文本模式读入文件内容 |
| -c | 从指定文件中读取 MD5 校验和,并进行校验 |
| --status | 不生成[争取/错误]提示信息,通过命令返回值来判断 |
[md5sum参数]

3.实例

3.1.查看md5sum帮助信息

命令:

md5sum --help

复制代码
[root@rhel77 ~]# md5sum --help
Usage: md5sum [OPTION]... [FILE]...
Print or check MD5 (128-bit) checksums.
With no FILE, or when FILE is -, read standard input.

  -b, --binary         read in binary mode
  -c, --check          read MD5 sums from the FILEs and check them
      --tag            create a BSD-style checksum
  -t, --text           read in text mode (default)
  Note: There is no difference between binary and text mode option on GNU system.

The following four options are useful only when verifying checksums:
      --quiet          don't print OK for each successfully verified file
      --status         don't output anything, status code shows success
      --strict         exit non-zero for improperly formatted checksum lines
  -w, --warn           warn about improperly formatted checksum lines

      --help     display this help and exit
      --version  output version information and exit

The sums are computed as described in RFC 1321.  When checking, the input
should be a former output of this program.  The default mode is to print
a line with checksum, a character indicating input mode ('*' for binary,
space for text), and name for each FILE.

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
For complete documentation, run: info coreutils 'md5sum invocation'
[root@rhel77 ~]# 

3.2.检查文件md5值

命令:

md5sum -t ztj.txt

OR

md5sum -b ztj.txt

复制代码
root@rhel77 ~]# md5sum -t ztj.txt
cfc12d1432a7b067566080122b1c4f85  ztj.txt
[root@rhel77 ~]# md5sum -b ztj.txt
cfc12d1432a7b067566080122b1c4f85 *ztj.txt
[root@rhel77 ~]# 

3.3.检查文件md5值,与文件无关

命令:

\cp ztj.txt ztj.txt.bak

md5sum ztj.txt

md5sum ztj.txt.bak

复制代码
root@rhel77 ~]# \cp ztj.txt ztj.txt.bak
[root@rhel77 ~]# md5sum ztj.txt
cfc12d1432a7b067566080122b1c4f85  ztj.txt
[root@rhel77 ~]# md5sum ztj.txt.bak 
cfc12d1432a7b067566080122b1c4f85  ztj.txt.bak
[root@rhel77 ~]# 

3.4.从指定文件中读取MD5校验和,并进行校验

命令:

md5sum ztj.txt >> md5sum.txt

md5sum -c md5sum.txt

复制代码
[root@rhel77 ~]# md5sum ztj.txt >> md5sum.txt
[root@rhel77 ~]# 
[root@rhel77 ~]# md5sum -c md5sum.txt
ztj.txt: OK
[root@rhel77 ~]# 

3.5.从指定文件中读取MD5校验和,并不显示校验信息,以命令返回值来判断

备注:

如果校验一致返回0,不一致返回1

命令:

md5sum -c --status md5sum.txt

echo $?

复制代码
[root@rhel77 ~]# md5sum -c --status md5sum.txt
[root@rhel77 ~]# echo $?
0
[root@rhel77 ~]# 

OR

命令:

echo 111 >>ztj.txt

md5sum -c --status md5sum.txt

echo $?

复制代码
[root@rhel77 ~]# echo 111 >>ztj.txt
[root@rhel77 ~]# 
[root@rhel77 ~]# md5sum -c --status md5sum.txt
[root@rhel77 ~]# echo $?
1
[root@rhel77 ~]# 
相关推荐
小猪佩奇TONY4 分钟前
Linux 内核学习(13) --- linux 内核并发与竞态
linux·服务器·学习
倔强的石头1064 分钟前
Linux 进程深度解析(四):环境变量 —— 进程的“环境 DNA”
linux·运维·服务器
牛奶咖啡135 分钟前
在Linux中搭建本地yum/dnf仓库
linux·搭建yum/dnf本地仓库·添加rpm文件到yum仓库·添加rpm文件到dnf仓库·生成仓库索引·测试本地搭建的yum仓库·搭建http服务并开启目录浏览
大聪明-PLUS6 分钟前
优雅的操作系统开发:用现代 C++ 编写操作系统内核(不使用宏)。第一部分——HAL 为王。
linux·嵌入式·arm·smarc
沈健_算法小生6 分钟前
Jenkins权限控制实现
运维·jenkins
Wpa.wk15 分钟前
自动化测试-自动化测试用例流程设计
运维·经验分享·自动化·测试用例·测试流程·测试流程设计
sunflower_level217 分钟前
【ssh key】登陆云服务器,github的安全密码
服务器·ssh·github
qq_4557608524 分钟前
Docker - 镜像
linux·运维·docker
苹果醋327 分钟前
java设计模式之责任链模式
java·运维·spring boot·mysql·nginx
m0_5348750528 分钟前
Ditto局域网同步功能实现宿主机和VMware虚拟机之间的复制粘贴共享
linux·运维·服务器