什么存档方法(tar、zip、7z 等)允许我在 macOS 上保留文件夹修改日期?

什么存档方法(tar、zip、7z 等)允许我在 macOS 上保留文件夹修改日期?

我目前在硬盘中有一个目录,TopFolder其中包含 3 个子文件夹:Folder1Folder2Folder3

当我在硬盘驱动器的顶级目录中时,执行以下操作:

tar cf TopFolder.tar Folder1 Folder2 Folder3

它创建一个文件,在提取时,使、和tar的修改日期等于提取时的时间。Folder1Folder2Folder3

我注意到没有这个问题并保留了、和zip的修改日期。一般来说,由于压缩而速度较慢。如果我需要修改日期保持原样而不依赖于,是否有一个好的方法来存档文件夹? 7z 中是否有一种方法与不压缩时一样快?谢谢!Folder1Folder2Folder3zipziptar

我的 tar 是 Mac 上的 bsdtar 3.3.2。

答案1

它会创建一个 tar 文件,在提取该文件时,Folder1、Folder2 和 Folder3 的修改日期等于它们提取时的时间。

您的tar工作方式很特殊,或者您可能忽略了某些内容(例如,您立即将新文件添加到解压目录中),因为tar默认情况下会恢复目录修改日期。我刚刚在 Fedora 32 中使用 tar 版本 1.32 仔细检查了它。

7z 中是否有一种方法在不压缩的情况下与 tar 一样快?谢谢!

您不需要 7z,但您始终可以使用 7z 中的存储压缩方法,例如

7za a -mx=0 -ms=off -mhc=off archive.7z <files>

相关内容