美文网首页
Python:计算某个目录下所有文件SHA256的Hash值

Python:计算某个目录下所有文件SHA256的Hash值

作者: BoxJing | 来源:发表于2023-03-28 13:45 被阅读0次

    下面这段代码结果会生成以|分割的文件名、Hash值、短Hash值的文本文件

    airGrooveUmamusume_v10.safetensors | 53378f37d3a7145ece0e6b12cbccf2f51cc85f65894c7f414754369a7d50acb0 | 53378f37d3
    0329-2.xlsx | 45cf02b3e0edf3c7e3853ae25c8e860957d2b9329e4ca12473726d98acc88c38 | 45cf02b3e0
    
    import hashlib
    import os
    
    # 改为模型所在的单独文件夹  我这里是有个桌面上的models文件夹
    fileDocument = '/Users/boxjing/Desktop/models'
    # 跑完后会有个file_hash.txt 文件,里面是所有文件的hash值
    fileName = 'file_hash.txt'
    
    hash_file = open(fileName, 'w', encoding='utf-8')
    for root, dirs, files in os.walk(fileDocument):
        if root != fileDocument:
            # 子目录不处理
            break
        for f in files:
            path = os.path.join(root, f)
            with open(path, 'rb') as fp:
                data = fp.read()
                sha256 = hashlib.sha256(data).hexdigest()
                shortHash = sha256[0:10]
                hashStr = f'{f} | {sha256} | {shortHash}'
                print(hashStr)
                hash_file.write(hashStr)
                hash_file.write('\n')
                hash_file.flush()
    hash_file.close()
    

    相关文章

      网友评论

          本文标题:Python:计算某个目录下所有文件SHA256的Hash值

          本文链接:https://www.haomeiwen.com/subject/pyatddtx.html