如何将当前时间作为 tar 存档中文件或目录的修改时间

如何将当前时间作为 tar 存档中文件或目录的修改时间

我想创建一个tar包含文件和目录的存档。我需要更改这些文件和目录的修改时间,以便它们的修改时间戳是我进行压缩时的当前日期和时间。我怎样才能在 shell 脚本中做到这一点?

答案1

如果您有 GNU tar,您可以使用该--mtime选项来存储任意修改时间;就你而言,

tar cf archive.tar --mtime="@$(date +%s)" ...

将对存档中存储的所有修改时间使用当前时间。

答案2

要更新目录下所有内容dir(包括目录本身)的修改时间戳:

find dir -exec touch {} +

您可以在创建tar目录存档之前执行此操作dir

相关内容