ext4将文件复制到目录而不更改目录时间戳

时间:2018-05-27 12:07:05

标签: linux timestamp cp

我想将文件复制到目录而不更改ext4文件系统上目录的修改时间戳。好吧,脚本中有很多文件和很多目录。

我查看了rsync和cp选项。

为了解决这个问题,如何在ext4文件系统上复制文件并保留目标目录上的时间戳?

有许多方法可以复制文件并保留其属性,但它们会修改父目录时间戳。所需要的是记录该时间戳并在复制后应用它的两步过程。在引用的问题中没有解决这个问题。 Giving a file/directory the same modification date as another

3 个答案:

答案 0 :(得分:0)

一种选择是保存和恢复时间戳:

# Save current modification time
timestamp=$(stat -c @%Y mydir)

[.. copy/sync files ..]

# Restore that timestamp
touch -d "$timestamp" mydir

答案 1 :(得分:-1)

guid。如果您想保留原始时间戳,请使用

$ touch -r <original_file> <new_file>

这将复制另一个文件中的属性。如果您需要更改特定属性,请使用以下内容。

访问时间

$ touch -a --date="1988-02-15" file.txt

修改时间

$ touch -m --date="2020-01-20" file.txt

要查看文件或文件夹的统计信息,请使用stat <file>

答案 2 :(得分:-1)

$ cp --preserve=timestamps oldfile newfile

$ cp -p oldfile newfile会这样做。 页明确说明了这一点。