#!/usr/bin/python
#*-*coding:utf8*-*
import os
import sys
import hashlib
class Logger(object):#打印到文本
def __init__(self, filename='default.log', stream=sys.stdout):
self.terminal = stream
self.log = open(filename, 'w')
def write(self, message):
self.terminal.write(message)
self.log.write(message)
def flush(self):
pass
sys.stdout = Logger('a.log', sys.stdout)
#sys.stderr = Logger('a.log_file', sys.stderr)
def md5sum(data):
with open(data, "rb") as f:
md5 = hashlib.md5() #赋空值
for i in f.read(4096): #防止遇到大文件打开太占用内存,所以一次打开4096字节
if i:
md5.update(i)
else:
break
md5 = md5.hexdigest()
return md5
def _files(data):
dir = os.walk(data)
for x, y, z in dir:
for i in z:
file_path = os.path.join(x, i)
#print(md5sum(file_path)),
#print(" "+file_path),
print(md5sum(file_path))
if __name__ == "__main__":
_files(sys.argv[1])