MD5校验文件

使用场景

在处理waymo数据时遇到问题:
tensorflow.python.framework.errors_impl.DataLossError: truncated record at 10157833’ failed with Read less bytes than requested

原因是数据传输过程中有损坏,可使用MD5校验文件完整性。

单个文件

单个文件可以在直接使用轻量级工具WinMD5Free软件检查MD5值是否匹配。

多个文件

文件数量较多时可以使用linux终端命令

md5sum *.tfrecord* > after_md5.txt

查看所有传输后文件的MD5值,同时查看文件传输之前的MD5值

md5sum *.tfrecord* > before_md5.txt

获得两份MD5值之后写个简短的程序进行对比:

before_list = []
with open('./before_md5.txt', 'r') as f1:
	before = f1.readlines()
for line in before:
	before_list.append(line.strip().split())

after_list = []
with open('./after_md5.txt', 'r') as f2:
	after = f2.readlines()
for line in after:
	after_list.append(line.strip().split())

for i in before_list:
	for j in after_list:
		if i[1]==j[1]:
			if i[0]!=j[0]:
				print(i[1])
			continue

程序会输出不能完成匹配(传输过程中有损坏)的文件名。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值