目标文件夹有历史成品,就先暂停镜像决定
源目录已经没有、目标目录仍然保留的文件,在镜像规则下可能成为删除对象。先把必须留存的历史成品备份到源与目标目录之外,再决定这个目标目录究竟要保存历史,还是只保持源目录的当前状态。
例如设计人员把去年的海报从工作目录移走了,交付盘却还保留客户确认过的版本。若把“备份”理解成“只复制新增内容”,就容易忽略镜像还可能清除目标端独有文件。查看文件名、与负责人确认保存用途,比看一次总体文件数量更有意义。
Microsoft 的 Robocopy 文档说明,/MIR 相当于包含子目录的镜像并清除源端不存在的目标项目;/L 则只列出,不复制、不删除,也不修改时间戳。本文只提供带 /L 的预览流程,不把删除执行作为下一步默认动作。
先保留独立备份,再在隔离目录验证方向
备份必须放在镜像范围之外,且能打开检查;目标目录本身不能同时充当它自己的保护副本。不要从盘符根目录开始,也不要让源和目标互相包含。
以下目录与文本都是教学样本。先用文件资源管理器建立一个新练习目录,其中有 Source、Target、Backup 三个并列文件夹。分别检查地址栏,确认它们互不包含,也不指向真实项目。
- 在 Source 创建
current-poster.txt,写入current public poster,保存后复制同一文件到 Target。 - 只在 Target 创建
archive-poster.txt,写入keep this earlier poster。Source 不应有这个文件。 - 把
archive-poster.txt另复制到 Backup,并打开确认内容。练习结束也保留这份副本。
若练习目录位于 C:\MirrorReviewDemo,在 PowerShell 或命令提示符中输入这一条完整命令:robocopy "C:\MirrorReviewDemo\Source" "C:\MirrorReviewDemo\Target" /MIR /L /FP /R:0 /W:0。路径是示例,替换时必须逐段确认;第一个目录是来源,第二个才是目标。敲回车前再次看清 /L 确实存在。
/FP 让日志包含完整路径,方便追溯项目;/R:0 与 /W:0 是本次预览的重试与等待设置。出现读取错误就停止核查,不应为了让输出继续而绕过权限。Robocopy 是 Windows 命令行程序,这个预览开关不是 PowerShell 的 -WhatIf;不要把两种语法互换。
文档适用范围列有 Windows 10 和 Windows 11,本文于 2026-09-25 核对。实际隔离运行环境为 Windows 10 内核版本 10.0.19045、Windows PowerShell 5.1;没有在 Windows 11、网络盘或云同步目录实测。命令适用范围也不代表旧系统仍在普通支持周期内。
对照预期结果,证明这次只是预览
这个两文件样本的关键结果是发现 archive-poster.txt 只在目标端,同时确认文件仍然存在。不能把日志里出现文件名理解成已经复制或已经删除。
预期 Target 的 archive-poster.txt 被列为额外文件;Source 与 Target 的 current-poster.txt 仍各有一份。完成后分别打开两个目录,确认 Source 有一个文件、Target 有两个文件,Backup 的历史文本仍可读取。如果 Source 出现了历史文件,先检查是不是建立样本时复制错位置,而不是修改预览参数来配合错误输入。
本次已执行相同结构的隔离测试:返回码为 2,日志列出目标端的额外文件,三个源/目标文件的运行前后 SHA-256 值保持一致,独立备份也保留。这个观察只针对新建的文本样本,不代表真实项目、权限或备份恢复已经验证。
读者可重复的检查是保留同一组练习文件,完整运行带 /L 的命令两次。两次都应识别同一个额外文件,文件数量与内容不变;日志里的运行时间无需相同。进入真实目录前,先把来源、目标、备份位置及需保留项目写进记录,并确认它们与练习时的角色一致。
Microsoft 说明返回码 2 可以表示目标端存在额外项目,8 及以上表示至少一次失败。因此非零不应一律解释成故障,零也不能单独证明备份可恢复;预览状态、错误行与项目清单要一起读。
用文字差异核对复核范围,不让网页替你决定删除
网页适合比较两轮人工整理的短清单,不能判断某个文件是否有保留价值。先从预览输出中抽出待讨论的相对路径,保持相同排序,并移除不应放进浏览器的客户名称或内部目录信息。
以下另一个虚构示例用于复核变化:第一轮记录只有一行 archive-poster.pdf;第二轮记录为两行,依次是 archive-poster.pdf 和 signed-approval.pdf。在文字差异比对的“原始版本”放第一轮,“修改版本”放第二轮,选择“行”。预期只有 signed-approval.pdf 显示为带加号的新增行。
把第二栏还原为只有 archive-poster.pdf,预期显示“两段文字相同”。这能验证贴入清单的比较是否按预期工作,却不能证明磁盘内容相同。新出现的签收文件应交给负责人确认来源和保存期限,而不是因为它出现在预览中就直接移除。
ToolboxHub 只处理贴入的文字,不会扫描目录、执行 Robocopy、复制文件或恢复备份。直接粘贴整段日志还可能把时间、速度等无关变化一起标出来;大量日志应使用本地日志工具,避免让浏览器比对长文本造成停顿。
看到这些症状时,先处理原因
预览输出异常时,要先确认扫描边界和读取条件,再判断文件差异。不要把所有异常都归为“目标太旧”。
目标大量文件突然都像多余项: 立即核对完整源路径。选错空文件夹、选到项目的上一层或把两端方向颠倒,都会改变比较的含义;回到文件资源管理器确认已知样本文件的位置,再重新预览。
出现拒绝访问或路径不可用: 将本轮记录为不完整。确认驱动器、共享连接和授权访问条件,不要把未读到的内容当成不存在,也不要先删目标文件来消除差异。
日志有额外文件,但你本来就想保留: 这是保存策略冲突。记录文件用途,把它保存在独立历史归档中,或者重新选择不会要求清除历史的复制方案;不要继续把同一个目录同时当作历史库与当前镜像。
日志没有明显异常,但应用仍打不开复制件: 此流程没有验证应用一致性、文件内容等价、权限完整性或恢复能力。应保留原件,用对应应用和备份流程做进一步验证,不能用文本比对结果代替恢复测试。
常见问题
下面的判断都以保留原件和独立备份为前提。任何无法解释的差异都应留待核对。
预览确认后可以直接删掉 /L 执行吗?
不要把这当成自动下一步。先完成每个目标独有项目的保留决定,并核对备份;真正的镜像属于另一项会改动数据的操作,需要按项目的复制和恢复流程处理。
本文会重命名文件吗?
不会,命令只预览目录比较。如果另有 PowerShell 改名需求,应先保存备份并在副本上用 -WhatIf 预览,再确认是否执行,不能借改扩展名实现格式转换。
为什么不直接把目标端多出的文件当垃圾?
它们可能是旧交付件、签收记录或后来单独保存的资料。“源端不存在”只是两边当前状态不同,并没有说明谁是权威版本或文件是否应删除。
文字差异比对能替我检查备份盘吗?
不能。它只比对两个文本框的内容,既不读取文件字节,也不编辑 CSV、工作簿或其他磁盘文件。完整备份验证仍须在本地和对应应用中完成。