python 批量获取目录下所有的文件的md5信息并写入到文件中

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wushuangge/article/details/89395187

md5.py

import hashlib   
import os
import io
import sys
 
def printUsage():
	print ('''Usage: [python] pymd5sum.py ''')

def geneMd5(filename):
    m = hashlib.md5()
    file = io.FileIO(filename,'r')
    bytes = file.read(1024)
    while(bytes != b''):
        m.update(bytes)
        bytes = file.read(1024) 
    file.close()
    return m.hexdigest()
def main():
    if(len(sys.argv) != 1 and len(sys.argv) != 2):
        printUsage()
    mat = "{:48}\t{:32}"
    if(len(sys.argv)==1):
        path="./"
    if(len(sys.argv)==2):
        path=sys.argv[1]
    for fpathe,dirs,fs in os.walk(path):
        for f in fs:
            full_file = os.path.join(fpathe,f)
            print (mat.format(full_file,geneMd5(full_file)))
main()

运行:
拷贝md5.py 到所需路径下
python md5.py > md5.txt

结果:
./build.bat 3521cf7e4a4a5f4795a5ff3eef0359f9
./README.md e3fd92744a45e706f5a27570172e0c7f
./src/common.h 516e4a9e8e6e50dd0d530c0ce8dfd13a
./src/ndrf_layer.hpp 71d1cdf7e36504fb4ab44d5b5a777508
./src/helper.hpp 48a13869505c77a984748401fd595aa2
./src/mtcnn.cpp b864993ae34c99e873e312542c9a21a7
./src/tool.hpp 923d88569b8f6bba650a59dcd8e7e58b
./src/cp2tform.cpp bef8c795197e5a9e667f335767022080
./src/CMakeLists.txt c1764e07bc7f6fcd4195442b0a2b1240
./src/mtcnn.h 5138f846f73c966157d04ffdd5058afd
./src/main.cpp 4de2d74f7d359f153908ccb533a0a0d8
./src/demo.hpp fdaeb6003331c5ca00dafa9d3a00ace2
./src/attribute.hpp 44df774157ecf686b28fdd1a24368020

可以自行对齐一下格式

猜你喜欢

转载自blog.csdn.net/wushuangge/article/details/89395187