gpt4 book ai didi

python - 在 Python 中使用元数据(用户 ID 和 ctime)进行归档(tar 和压缩)

转载 作者:行者123 更新时间:2023-12-01 06:18:00 25 4
gpt4 key购买 nike

我正在备份文件系统,我需要确保保存元数据(文件所有者和创建时间)。

Python 中的 tarfile 模块非常有用,我在我的解决方案中广泛使用它。但是,我无法使用保存元数据的文件创建 tar 文件(大概是因为 copycopy2 无法执行此操作)。

您将如何在 Python 中解决这个问题?

编辑:

只是为了向社区澄清:Python 中的 tarfile 模块确实提供了通过 Tarinfo 对象存储元数据的方法。本质上,Tarinfo 对象是 Tar 对象的成员,它包含您可能需要的所有信息。请参阅已接受的帖子。

谢谢!

最佳答案

“大概”?你的意思是你不知道?你尝试过吗?也就是说,据我所知,tarfiles 不保留 ctime,并且它没有什么意义,因为解压时应该重置 ctime。不过,mtime 被保留,并且 tarfile 模块处理 mtime。

添加文件时,python tarfile 模块使用 TarInfo 对象。就像这样:

TarFile.addfile(tarinfo, fileobj=None)

TarInfo 对象包含文件信息:

TarInfo.mtime
Time of last modification.

TarInfo.uid
User ID of the user who originally stored this member.

TarInfo.gid
Group ID of the user who originally stored this member.

还有大量其他元数据。请参阅http://docs.python.org/library/tarfile.html

关于python - 在 Python 中使用元数据(用户 ID 和 ctime)进行归档(tar 和压缩),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2145182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com