robocopy 可以使用哪些开关来保存目标上的文件和目录时间?

robocopy 可以使用哪些开关来保存目标上的文件和目录时间?

使用 robocopy 将文件复制到新驱动器后,我意识到所有文件和目录的创建时间都已重置为复制时间。

是否有一些开关可以使 robocopy 保留原始文件的时间?

答案1

看一下/COPY:[copyflags]/DCOPY开关的选项。

根据ROBOCOPY /?使用信息:

/COPY:copyflag[s] :: 要复制的文件内容(默认为 /COPY:DAT)。
                      (复制标志:D=数据、A=属性、T=时间戳)。
                      (S=安全=NTFS ACL,O=所有者信息,U=审核信息)。

/DCOPY:T :: 复制目录时间戳。

例如:

ROBOCOPY c:\src d:\dest /MIR /COPY:DT /DCOPY:T

将复制所有文件和文件夹并保留日期和时间戳。

ROBOCOPY c:\src d:\dest /MIR /COPY:DAT /DCOPY:T

将复制所有文件和文件夹并保留日期和时间戳以及文件属性。

还有另一个(我相信已经弃用了?)开关/TIMFIX,其功能大致相同,/COPY:DT但它不能修复文件夹上的时间戳。

这些是在 Windows 7 x64 Ultimate 上使用 ROBOCOPY 5.1.10.1027 进行测试的。

请注意,该/MIR开关会镜像您要复制的目录;也就是说,/MIR还会删除目标文件夹中在源文件夹中找不到的文件。该/MIR开关相当于/E/PURGE开关一起使用(但带有小例外)。

答案2

我在工作中使用它。比使用 /MIR 开关更安全,因为 /MIR 开关可能会覆盖或删除数据。这将复制文件夹和文件的时间戳。

robocopy G:\users\username F:\Users\username /COPYALL /E /dcopy:T /SECFIX

/E 复制空文件夹(如果不需要则删除)

/SECFIX 复制 NTFS 权限(如果不需要则删除)

可以添加 /XO 来排除较旧的(例如,如果对文件夹迁移进行调整)

相关内容