使用命令行(Robocopy)- 适用于恢复整个文件夹结构
Robocopy 是Windows系统自带的一个强大的文件复制工具,它有一个专门的功能可以保留所有原始文件属性,包括修改日期、创建日期和访问日期。
假设您已经将文件从 D:\原始文件夹 复制到了 E:\新文件夹,但所有文件的日期都变成了当前时间。现在您想用原始文件夹中的日期来修复新文件夹中的日期。
操作步骤:
1.以管理员身份运行“命令提示符”或 “PowerShell”。
2.输入以下命令(请根据您的实际路径修改源文件夹和目标文件夹):
robocopy "D:\原始文件夹" "E:\新文件夹" /mir /dcopy:T"D:\原始文件夹":替换为仍然存有正确日期文件的原始路径。
"E:\新文件夹":替换为日期被更改了的目标路径。
/mir:镜像模式,它会使得目标目录成为源的精确副本。这里我们主要利用它来同步文件属性,而不是复制文件内容。
/dcopy:T:这是关键参数! 它告诉Robocopy只复制目录的时间戳(修改日期、创建日期),而不会删除或覆盖文件内容。
3.按回车运行。Robocopy会快速扫描两个文件夹,然后仅更新目标文件夹中文件的“修改日期”等信息,使其与源文件夹一致。由于文件内容本身是相同的,所以它不会重新复制文件数据,速度非常快。
这是最推荐的系统自带方法,高效且准确。

补充:
在复制部分文件时间时会报错卡住,提示"云文件提供程序未运行。 正在等待 30 秒...",是因为此文件是云盘里的文件,文件是“在线仅占位符”状态:为了节省空间,OneDrive 可能会将你长期不用的文件设置为“在线存档”,只在本地保留一个快捷方式。当你访问它时,需要从云端重新下载。
解决方法是跳过:
参数解释(这就是实现“跳过”和“自动”的关键):
- "C:\..." "D:\...":您的源文件夹和目标文件夹。
- /E:复制所有子目录,包括空目录。
- /Z:在可重启模式下复制文件(对付网络中断)。
- /R:3:如果遇到错误(如云文件错误),只重试3次(默认是100万次!)。
- /W:5:每次重试前等待5秒(默认30秒)。
- /TBD:等待定义共享名(帮助绕过一些等待)。
- /NP:不显示复制进度百分比,让日志更简洁。
- /LOG:copy_log.txt:将复制详情输出到日志文件,便于事后查看哪些文件出了问题。
这个命令会在遇到“云文件提供程序未运行”这类错误时,重试几次后就自动跳过这个文件,继续复制下一个,而不会完全卡死。
robocopy "D:\原始文件夹" "E:\新文件夹" /mir /dcopy:T /R:0 /W:1