参考文章:
鸟哥的Linux私房菜:检验软件正确性

Linux系统中每个文件有其独特的指纹验证数据,因为每个文件的内容和大小都不相同,所以文件如果在下载过程中因为传输造成数据缺失,就会有一部分的信息不一样。利用这个特性,我们可以使用 MD5/sha1 或更严密的 sha256 等指纹验证机制来判断该文件是否完整。

1. 用法与说明

md5sum - compute and check MD5 message digest
md5sum [OPTION]... [FILE]...
DESCRIPTIONPrint 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)
# md5sum/sha1sum/sha256sum [-bct] filename
# md5sum/sha1sum/sha256sum [--status|--warn] --check filename
选项与参数:
-b :使用 binary 的读档方式,默认为 Windows/DOS 文件型态的读取方式;
-c :检验文件指纹;
-t :以文字体态来读取文件指纹。范例一:将刚刚的文件下载后,测试看看指纹码
[root@study ~]# md5sum ntp-4.2.8p3.tar.gz
b98b0cbb72f6df04608e1dd5f313808b  ntp-4.2.8p3.tar.gz
# 在提供数据或者网上下载时,会同时提供md5sum文件,通过md5sum命令来显示下载文件的编码,并比较与之前提供的编码是否相同

2. 自己操作实例记录

  1. 查看公司提供的md5.txt文件,确认公司提供的文件指纹验证数据,显示如下:
zexing@DNA:~/projects/zhaoxiujuan$ cat md5.txt
13e2fb196b170866035c93a8534bf701  raw/m3108_1.fq.gz
3f516ba98070b038e4e44324e0d7894d  raw/m3108_2.fq.gz
d53cc1cf701cf72d958bb190deb0a094  raw/m3110_1.fq.gz
eb00833c8aa528ce592202990a296b2f  raw/m3110_2.fq.gz
a21901c3b0415f8dbe445637c8ef4472  raw/m3111_1.fq.gz
3a40da7a79e0a8fc76536d27ec385a71  raw/m3111_2.fq.gz
7d11903782b295cb7d2bfb47660668c6  raw/m3112_1.fq.gz
e99c36ef5af7b76b3194ba79cea95f56  raw/m3112_2.fq.gz
6e317dca05fa48382a5d67929bc152b9  raw/m3113_1.fq.gz
67e3241f44d85386250c238645a97467  raw/m3113_2.fq.gz
965d55f93385d214f6e754f85c3edacd  raw/m3114_1.fq.gz
78632f94da826e3d076eb6d3f0336e56  raw/m3114_2.fq.gz
cfe9222340d5a671474d2feec2a7e6db  raw/m3122_1.fq.gz
6b545547d8a0fc87e6f92ebe99e36e5c  raw/m3122_2.fq.gz
a65452ed784d6e7d0de190b1e9ef67af  raw/msh1_1.fq.gz
60050aed49d9e3692788ba96f7c976a6  raw/msh1_2.fq.gz
c35a01df806a3d087a79137d6a91e045  raw/msh2_1.fq.gz
6363f3816a2a90bd6cd726d7a947d94c  raw/msh2_2.fq.gz
32403406b3980199b1f322c733412e95  raw/Scr_1.fq.gz
408456172964e488b348b4279e502fa9  raw/Scr_2.fq.gz
d85f54decb145f742a4e44e46f23884c  bam/m3108.bam
fb5590988d4d7f20f5ad29ecc28699ea  bam/m3108.bam.bai
402c2d3954a1c1f80d42d9d9ea495091  bam/m3110.bam
17136903f60e14b583ba6b9c6c826ab7  bam/m3110.bam.bai
068bbec3d2ff5332df9f8187c30c5779  bam/m3111.bam
88fc8c70432d3876d53e3a9f82521a16  bam/m3111.bam.bai
99e6292188ec23316d9b3db1d11c1577  bam/m3112.bam
6cee56b65de335bf68a79101344e57d5  bam/m3112.bam.bai
5b85a4341c5decf27e89ae4882442d4b  bam/m3113.bam
e11335558cdcf350f771939572039a2d  bam/m3113.bam.bai
c8ddf60536a860f1fec1834aa8da02d0  bam/m3114.bam
ef6ef75670473e86a3c72c82119a46c4  bam/m3114.bam.bai
2ce0e15e832ddc7d9c1a5df8d48764b0  bam/m3122.bam
0ea8b38349d02e80f9a0f2ee8a3b4245  bam/m3122.bam.bai
ee4f706ecd29ea87d50ed083d43c922c  bam/msh1.bam
b28771ebf986d1ab5a79bcbd59f075ae  bam/msh1.bam.bai
b8f7799b7a098eef811fe53beba6390a  bam/msh2.bam
2c7fcc2e10b642d35def4e544c60ef24  bam/msh2.bam.bai
b047d387a6167e528621d883fcaffbb9  bam/Scr.bam
f64332953e6bf6805b8d8be3145fc524  bam/Scr.bam.bai
  1. 将相关数据的指纹验证数据重新写入check_md5sum.txt文件:
zexing@DNA:~/projects/zhaoxiujuan$ echo "13e2fb196b170866035c93a8534bf701  raw/m3108_1.fq.gz
3f516ba98070b038e4e44324e0d7894d  raw/m3108_2.fq.gz
d53cc1cf701cf72d958bb190deb0a094  raw/m3110_1.fq.gz
eb00833c8aa528ce592202990a296b2f  raw/m3110_2.fq.gz
a21901c3b0415f8dbe445637c8ef4472  raw/m3111_1.fq.gz
3a40da7a79e0a8fc76536d27ec385a71  raw/m3111_2.fq.gz
7d11903782b295cb7d2bfb47660668c6  raw/m3112_1.fq.gz
e99c36ef5af7b76b3194ba79cea95f56  raw/m3112_2.fq.gz
6e317dca05fa48382a5d67929bc152b9  raw/m3113_1.fq.gz
67e3241f44d85386250c238645a97467  raw/m3113_2.fq.gz
965d55f93385d214f6e754f85c3edacd  raw/m3114_1.fq.gz
78632f94da826e3d076eb6d3f0336e56  raw/m3114_2.fq.gz
cfe9222340d5a671474d2feec2a7e6db  raw/m3122_1.fq.gz
6b545547d8a0fc87e6f92ebe99e36e5c  raw/m3122_2.fq.gz
a65452ed784d6e7d0de190b1e9ef67af  raw/msh1_1.fq.gz
60050aed49d9e3692788ba96f7c976a6  raw/msh1_2.fq.gz
c35a01df806a3d087a79137d6a91e045  raw/msh2_1.fq.gz
6363f3816a2a90bd6cd726d7a947d94c  raw/msh2_2.fq.gz
32403406b3980199b1f322c733412e95  raw/Scr_1.fq.gz
408456172964e488b348b4279e502fa9  raw/Scr_2.fq.gz
" > check_md5sum.txt
  1. 检测数据是否一致:
zexing@DNA:~/projects/zhaoxiujuan$ md5sum -c check_md5sum.txt
raw/m3108_1.fq.gz: OK
raw/m3108_2.fq.gz: OK
raw/m3110_1.fq.gz: OK
raw/m3110_2.fq.gz: OK
raw/m3111_1.fq.gz: OK
raw/m3111_2.fq.gz: OK
raw/m3112_1.fq.gz: OK
raw/m3112_2.fq.gz: OK
raw/m3113_1.fq.gz: OK
raw/m3113_2.fq.gz: OK
raw/m3114_1.fq.gz: OK
raw/m3114_2.fq.gz: OK
raw/m3122_1.fq.gz: OK
raw/m3122_2.fq.gz: OK
raw/msh1_1.fq.gz: OK
raw/msh1_2.fq.gz: OK
raw/msh2_1.fq.gz: OK
raw/msh2_2.fq.gz: OK
raw/Scr_1.fq.gz: OK
raw/Scr_2.fq.gz: OK
md5sum: WARNING: 1 line is improperly formatted
  1. 存在问题
    md5sum使用过程中,txt文件与数据fq.gz是否进行了比较?需要进一步学习

RNA-seq流程学习笔记(6)使用md5sum检验下载数据的完整性相关推荐

  1. RNA-seq流程学习笔记(7)-使用Hisat2进行序列比对

    参考文章: RNAseq(4)–Hisat2进行序列比对及Samtools格式转化 RNA-seq(5):序列比对:Hisat2 hisat2比对软件将reads比对到参考基因组 hisat2比对 R ...

  2. CHIP-seq流程学习笔记(13)-ATAC_seq 数据加工处理

    今天第一次尝试处理ATAC_seq数据,希望能尽快做完吧. 先放个找好的参考文章:ATAC-seq/ChIP-seq分析方法 1.建立相应目录 对新数据建立对应实验人员(zhaoyingying).测 ...

  3. CHIP-seq流程学习笔记(7)-热图软件 deeptools

    参考文章: ChIP-seq操作记录 如何使用deeptools处理BAM数据 用deeptools绘制基因组位置的信息 高通量测序数据处理学习记录(四):DeepTools学习笔记 deepTool ...

  4. CHIP-seq流程学习笔记(3)-比对软件 bowtie2

    参考文章: bowtie2使用手册 老菜鸟终于开始进行CHIP-seq的学习啦,又是开始学习新的软件.不过现在感觉没那么头大了,毕竟前边学了一些了.先做些简单的记录吧. 1.安装软件 安装仍然在服务器 ...

  5. RNA-seq流程学习笔记(10)-使用HTSeq-count软件对reads进行计数

    参考文章: 转录组入门(6): reads计数 RNA-seq练习 第二部分 RNA-seq(6): reads计数 转录组学习六(reads计数与标准化) 1. reads计数的原理 对我们测序得到 ...

  6. 软件开发流程--学习笔记

    软件开发流程--学习笔记 背景 产生原因及作用 个人理解 软件开发流程 需求 需求调研 需求分析 需求确认 设计 概要设计 详细设计 编码 测试 交付 维护 知识拓展 软件开发生命周期(SDLC) 软 ...

  7. at24c16如何划分出多个读写区_AVR学习笔记九、基于AT24C16的数据存储实验

    Ema{@AVR 学习笔记九.基于 AT24C16 的数据存储实验 ------- 基于 LT_Mini_M16 9.1 用 I/O 口模拟 I2C 总线实现 AT24C16 的读写 9.1.1 .实 ...

  8. Kafka学习笔记(3)----Kafka的数据复制(Replica)与Failover

    1. CAP理论 1.1 Cosistency(一致性) 通过某个节点的写操作结果对后面通过其他节点的读操作可见. 如果更新数据后,并发访问的情况下可立即感知该更新,称为强一致性 如果允许之后部分或全 ...

  9. 学习笔记1:更改python下载源

    学习笔记1:更改python下载源,让安装速度更快! 1.常用的国内镜像源 清华镜像源 https://pypi.tuna.tsinghua.edu.cn/simple 中科大镜像源 https:// ...

最新文章

  1. 【 MATLAB 】legend 的使用简析
  2. Intel Realsense D435 python (Python Wrapper)example -1: quick start (快速开始)
  3. 一文攻破枚举类型-C语言
  4. Ubuntu下安装FTP服务及使用(VSFTPD详细设置)(二)
  5. java大文件解析_java大文件(百M以上)的上传下载实例解析
  6. 二叉树的基本操作(建立与遍历)
  7. 有人说JavaScript是未来的编程语言?这是为什么?
  8. 罗技Setpoint控制酷狗等第三方播放器
  9. twrp两种方式刷入的mm管理器_Google Pixel C 刷入Magisk
  10. 国家建筑标准设计图集
  11. RabbitMQ队列,直连队列,主题队列,扇形队列,死信队列,延迟
  12. win10 x64+VS2017社区版+OpenCV3.2.0安装
  13. Android APP推广流程
  14. 80386 保护模式
  15. 信号隔离器的功能原理是什么?
  16. JAVA中的运算规则
  17. Verilog-黑金-扫盲文笔记
  18. 2009年高考强人零分作文摘选
  19. 失望时想起了你是什么歌_你是空你是空色即是空空什么歌名
  20. c语言中的正弦函数与余弦函数

热门文章

  1. php xml expat,php xml expat解释器
  2. SpringCloud中Client向Eureka注册中心注册服务成功后不久就Unregistering(Unregistering application 服务名 with eureka with)
  3. 前端实现括号匹配,假如字符串有且仅有[],{},(),''几种,判断字符串是否符合规格
  4. EasyExcel基于一个Sheet模板导出多个Sheet
  5. 怎么用NFC手机读卡片信息
  6. 百度AI的使用:解析身份证
  7. (附源码)计算机毕业设计SSM酒店入住管理系统
  8. nfs服务器之间实现目录共享
  9. linux proc 自动清理,Linux下清理内存和Cache方法 /proc/sys/vm/drop_caches
  10. m3u8流文件在html视频播放器中播放有声音无画面问题