我正在尝试编写一个Python脚本来获取目录中(Linux中)所有文件的md5sum。我相信我已经在下面的代码中完成了。确定在目录中是否添加,删除或修改了任何文件
我希望能够执行此操作以确保目录中的文件没有发生变化,并且没有文件被添加为删除。
问题是如果我对目录中的文件进行了更改,但之后又将其更改回来。运行下面的函数会得到不同的结果。 (虽然我改变了修改后的文件回
谁能解释这一点,让我知道,如果你能想到的一个变通
def get_dir_md5(dir_path):
"""Build a tar file of the directory and return its md5 sum"""
temp_tar_path = 'tests.tar'
t = tarfile.TarFile(temp_tar_path,mode='w')
t.add(dir_path)
t.close()
m = hashlib.md5()
m.update(open(temp_tar_path,'rb').read())
ret_str = m.hexdigest()
#delete tar file
os.remove(temp_tar_path)
return ret_str
编辑:。。? 由于这些罚款乡亲回答说,它看起来像焦油包括像修改日期标题信息。请问使用拉链的工作有什么不同或其他格式?
任何其他的想法变通?
很好的回答。我列出了同样的基本方法,但在代码中。尼斯。 –