mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 03:44:55 +00:00 
			
		
		
		
	I published it on the web as http://www.python.org/2.1/md5sum.py so I thought I might as well check it in. Works with Python 1.5.2 and later. Works like the Linux tool ``mdfsum file ...'' except it doesn't take any options or read stdin.
		
			
				
	
	
		
			32 lines
		
	
	
	
		
			679 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			679 B
		
	
	
	
		
			Python
		
	
	
	
	
	
#! /usr/bin/env python
 | 
						|
 | 
						|
"""Python utility to print MD5 checksums of argument files.
 | 
						|
 | 
						|
Works with Python 1.5.2 and later.
 | 
						|
"""
 | 
						|
 | 
						|
import sys, md5
 | 
						|
 | 
						|
BLOCKSIZE = 1024*1024
 | 
						|
 | 
						|
def hexify(s):
 | 
						|
    return ("%02x"*len(s)) % tuple(map(ord, s))
 | 
						|
 | 
						|
def main():
 | 
						|
    args = sys.argv[1:]
 | 
						|
    if not args:
 | 
						|
        sys.stderr.write("usage: %s file ...\n" % sys.argv[0])
 | 
						|
        sys.exit(2)
 | 
						|
    for file in sys.argv[1:]:
 | 
						|
        f = open(file, "rb")
 | 
						|
        sum = md5.new()
 | 
						|
        while 1:
 | 
						|
            block = f.read(BLOCKSIZE)
 | 
						|
            if not block:
 | 
						|
                break
 | 
						|
            sum.update(block)
 | 
						|
        f.close()
 | 
						|
        print hexify(sum.digest()), file
 | 
						|
 | 
						|
if __name__ == "__main__":
 | 
						|
    main()
 |