md5sum.py
32 lines
| 781 B
| text/x-python
|
PythonLexer
/ tests / md5sum.py
|
r1924 | #! /usr/bin/env python | ||
|
r1928 | # | ||
# Based on python's Tools/scripts/md5sum.py | ||||
# | ||||
# This software may be used and distributed according to the terms | ||||
# of the PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2, which is | ||||
# GPL-compatible. | ||||
|
r1924 | import sys | ||
import os | ||||
import md5 | ||||
for filename in sys.argv[1:]: | ||||
try: | ||||
fp = open(filename, 'rb') | ||||
except IOError, msg: | ||||
sys.stderr.write('%s: Can\'t open: %s\n' % (filename, msg)) | ||||
sys.exit(1) | ||||
m = md5.new() | ||||
try: | ||||
while 1: | ||||
data = fp.read(8192) | ||||
if not data: | ||||
break | ||||
m.update(data) | ||||
except IOError, msg: | ||||
sys.stderr.write('%s: I/O error: %s\n' % (filename, msg)) | ||||
sys.exit(1) | ||||
sys.stdout.write('%s %s\n' % (m.hexdigest(), filename)) | ||||
sys.exit(0) | ||||