我使用 Total Commander 复制文件时,时间戳(创建日期)丢失,只保留修改日期。这是数十万文件和少量结核病数据,所以我不想再次复制它们。
我设法使用 robocopy 仅更新文件夹时间戳-效果很好:
robocopy /e /dcopy:t c:\source d:\destination
但所有文件的时间戳都被修改为复制时间。
我尝试了一些选项,例如:
robocopy /e /copy:t c:\source d:\destination
robocopy /e /copyall c:\source d:\destination
但没有帮助。
它确实能完成工作,但只有当目的地 是空的:
robocopy /e /copyall /dcopy:t c:\source d:\destination
它也能完成这项工作,但仅限于 Windows 7(在 Windows 10 上不起作用)并再次复制所有文件,这不是我想要的:
robocopy /e /copyall /is c:\source d:\destination
有人知道如何只更新文件的时间戳而不再次复制数据本身吗?可以是任何应用程序/方法,但如果可能的话,我更喜欢免费的。我需要重新创建整个子目录结构、隐藏文件和符号链接 - 完整镜像。:)
谢谢。
答案1
好的,我已经设法做到了这一点,也许它对其他人有用:
robocopy /e /timfix /dcopy:t c:\source d:\destination
完成工作了:)
答案2
再次复制可能是最快的方法。监督所有命令花了我几个小时,而且并不完美。为了避免文件复制,添加了 copy:t
robocopy /e /timfix /dcopy:t /copy:t c:\source d:\destination
确实,robocopy 在没有它的情况下开始物理复制(Windows 10 本地或 Samba)。需要修复由于 Linux 缩写“旧时间戳”(不显示时间,其他命令在复制时将其视为午夜)而错误复制的数 TB 的 Samba 数据,而没有时间戳的时间部分。本地结果正常,但在 (FreeBSD) Samba 中仅复制了修改时间。此处的 robocopy 时间修复不支持创建时间,仅在重新创建文件时才支持。
robocopy 的一个缺陷是,即使数据未被复制,它也会报告“已复制字节”,如不切实际的速度所示:速度:2826677.309 兆字节/分钟。