简介: Linux和Mac下获取文件CRC、MD5、hash、SHA1、SHA256值。

注: Linux和Mac下获取方式一致。

语法如下:

cksum 文件名    # CRC
md5sum 文件名   # 获取MD5
shasum 文件名   # 获取SHA1# -a 支持可选值:1 (default), 224, 256, 384, 512, 512224, 512256
shasum -a 256 文件名   #获取SHA256

cksum – CRC

Linux cksum命令用于检查文件的CRC是否正确。确保文件从一个系统传输到另一个系统的过程中不被损坏。
CRC是一种排错检查方式,该校验法的标准由CCITT所指定,至少可检测到99.998%的已知错误。
指定文件交由指令"cksum"进行校验后,该指令会返回校验结果供用户核对文件是否正确无误。若不指定任何文件名称或是所给予的文件名为"-",则指令"cksum"会从标准输入设备中读取数据。

语法

cksum [--help][--version][文件...]

实例

使用指令"cksum"计算文件"testfile1"的完整性,输入如下命令:

$ cksum testfile1

以上命令执行后,将输出校验码等相关的信息,具体输出信息如下所示:

1263453430 78 testfile1         //输出信息

上面的输出信息中,"1263453430"表示校验码,"78"表示字节数。

md5sum

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

shasum

打印或检查SHA校验和。

语法:shasum [OPTION]... [FILE]...

当省略文件参数或文件为-时,从标准输入读取待校验的文本。

选项详解

  -a, --algorithm   1 (default), 224, 256, 384, 512, 512224, 512256-b, --binary      read in binary mode-c, --check       read SHA sums from the FILEs and check them-t, --text        read in text mode (default)-U, --UNIVERSAL   read in Universal Newlines modeproduces same digest on Windows/Unix/Mac-0, --01          read in BITS modeASCII '0' interpreted as 0-bit,ASCII '1' interpreted as 1-bit,all other characters ignored-p, --portable    read in portable mode (to be deprecated)The following two options are useful only when verifying checksums:-s, --status      don't output anything, status code shows success-w, --warn        warn about improperly formatted checksum lines-h, --help        display this help and exit-v, --version     output version information and exitWhen verifying SHA-512/224 or SHA-512/256 checksums, indicate the algorithm explicitly using the -a option, e.g.shasum -a 512224 -c checksumfileThe sums are computed as described in FIPS PUB 180-4.  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 type (`*' for binary, ` ' for text, `U' for UNIVERSAL, `^' for BITS, `?' for portable), and name for each FILE.Report shasum bugs to mshelor@cpan.org

参考

  1. https://www.cnblogs.com/kevingrace/p/10201723.html

(完)

Linux和Mac下获取文件CRC/MD5/SHA1/SHA256相关推荐

  1. Windows系统中通过命令查看文件的MD5,SHA1,SHA256校验值

    Windows系统中通过命令查看文件的MD5,SHA1,SHA256校验值 命令格式如下: certutil -hashfile yourfilename MD5 certutil -hashfile ...

  2. 使用Windows自带的工具计算文件的 MD5 SHA1 SHA256

    使用Windows自带的工具计算文件的 MD5 SHA1 SHA256 很多网站会提供下载文件的校验码信息,在下载文件之后,如何方便地计算MD5 SHA1 SHA256等校验和呢?之前我常用的工具是H ...

  3. 快速计算文件的MD5/SHA1/SHA256等校验值(Windows/Linux)

    从网络上下载文件,尤其是非常大的文件怎么确保文件准确无误呢? 通常网站提供文件时会同时提供该文件的校验值,如MD5,SHA1,SHA256等, 当文件下载完成后,计算它的校验值,如果和网站提供的一致, ...

  4. mac下修改文件的md5值

    打开终端 改变文件的md5值命令: echo (随便写入几个字符,不带括号) >> /Users/carl/Downloads/要修改的文件 查看文件的md5值命令: md5 /Users ...

  5. Mac系统验证文件的MD5/SHA1/SHA256

    以下操作都可以直接在终端中进行 验证MD5 md5 /path/file(包含后缀) 或者 openssl md5 /path/file(包含后缀) MD5的长度为32个16进制字符,共128位 MD ...

  6. 在Windows系统中查看下载文件的MD5,SHA1,SHA256校验码

    步骤一: 打开Windows终端 1. Windows按键+R 2. 输入CMD 3. 点击确定,打开终端 步骤二: 在Windows终端中输入校验命令 1. Windows终端命令结构 certut ...

  7. Windows命令查看文件的MD5/SHA1/SHA256

    certutil -hashfile yourfilenameaddress MD5 certutil -hashfile yourfilenameaddress SHA1 certutil -has ...

  8. linux获取文件的md5,linux shell 获取文件md5的命令linux操作系统 -电脑资料

    下面我给各位朋友总结一下在linux中利用shell命令来获取文件md5及遍历目录下所有文件的md5的例子,希望此例子对各位同学会有所帮助, 获取文件的MD5值: $ md5sum linuxmint ...

  9. linux 文件md5,Linux下计算文件的MD5值

    脚本功能 脚本使用Perl编写,计算文件的MD5值 脚本用途 服务器在安装完操作系统后,计算PATH变量里面所有的二进制文件的MD5.计算单个文件MD5值.计算某个目录(包括子目录)下所有的文件的MD ...

最新文章

  1. 【Harvest源码分析】GetFourZeroCrossingIntervals函数
  2. 并发编程实战:取消和关闭
  3. vector容器与find算法
  4. OAuth 2.0 简介
  5. python权重初始值设置_pytorch自定义初始化权重的方法
  6. 客户端连接mysql 自动断开_MySql连接空闲8小时自动断开的原因及连接池配置方法...
  7. 牛客网编程题07--提取不重复的整数
  8. UniversalVideoView
  9. Redis学习笔记整理(黑马程序员视频课程)
  10. GBK内码字符串转Unicode字符串
  11. 英尺英寸和厘米的换算_英尺米换算(英尺英寸与厘米换算器)
  12. 诺禾-蛋白表达纯化之通关技巧
  13. 精度和分辨率的区别与理解
  14. golang个人整理知识点
  15. 深度学习服务器配置过程
  16. 如何使用一个for循环输出九九乘法表
  17. 【AntdVue】下拉选择框乱回弹问题
  18. Solar-Putty如何修改显示字体大小
  19. Shader——漩涡效果
  20. 【操作系统】30天自制操作系统--(14)多任务1

热门文章

  1. 张维迎:知识的本质与企业家精神
  2. python:统计数字字符个数
  3. 常用正则表达式大全(校验数字,字符,号码等)
  4. Vue2的router-view中子组件与父组件传值
  5. iOS7.1以及iOS9.2与之前的不同
  6. 工业级小体积路由器_双网口工业4G路由器
  7. 异常:This application has no explicit mapping for /error, so you are seeing this as a fallback解决方法
  8. 何为高通平台的AMSS
  9. ARCore平面与空间点云实现
  10. 计算机知识竞赛的通知,计算机知识竞赛通知短信模板.doc