python md5sum


## {{{ http://code.activestate.com/recipes/266486/ (r1)
#!/usr/bin/env python

## md5hash
##
## 2004-01-30
##
## Nick Vargish
##
## Simple md5 hash utility for generating md5 checksums of files.
##
## usage: md5hash <filename> [..]
##
## Use '-' as filename to sum standard input.

import hashlib
import sys

def sumfile(fobj):
'''Returns an md5 hash for an object with read() method.'''
m = hashlib.md5()
while True:
d = fobj.read(8096)
if not d:
break
m.update(d)
return m.hexdigest()


def md5sum(fname):
'''Returns an md5 hash for file fname, or stdin if fname is "-".'''
if fname == '-':
ret = sumfile(sys.stdin)
else:
try:
f = file(fname, 'rb')
except:
return 'Failed to open file'
ret = sumfile(f)
f.close()
return ret


# if invoked on command line, print md5 hashes of specified files.
if __name__ == '__main__':
print md5sum('xxx.rar')
# for fname in sys.argv[1:]:
# print '%32s %s' % (md5sum(fname), fname)
## end of http://code.activestate.com/recipes/266486/ }}}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值