## {{{ 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/ }}}
python md5sum
最新推荐文章于 2024-06-02 13:53:25 发布