Windows 批处理,如何在比较模式而不是复制模式下自动化 RoboCopy?

Windows 批处理,如何在比较模式而不是复制模式下自动化 RoboCopy?

下面的 RoboCopy Compare 命令运行良好,
它比较两个文件夹并将
结果输出到文本文件,
如果两个文件夹之间存在差异,
则文本文件至少具有5 个短语嵌入:

*EXTRA 目录
*EXTRA 文件
新文件
新目录
较旧

ROBOCOPY.EXE 选项:
https://technet.microsoft.com/en-us/library/cc733145(v=ws.11).aspx
https://www.mydigitallife.net/robocopy-syntax-command-line-switches-and-examples/

使用的命令是:

ROBOCOPY.EXE D:\Temp S:\1\Temp *.* /V /FP /BYTES /L /S /E /COPYALL /DCOPY:T /NP /XJ /R:9 /W:9 >S:\LOG_files\Output.txt   

退出代码 = 0,同时使用

echo %errorlevel%   

文本文件显示比较存在问题,
因为文本文件包含如下短语:
*EXTRA 目录
*EXTRA 文件
新文件

ETC…

但是 RoboCopy 退出代码 = 0 和
零(0)退出代码也是有意义的,
因为没有复制文件,
因为 Robocopy 开关是 /L
/L ::仅列出 - 不复制、时间戳或删除任何文件。

问题是:
如何优雅地使用RoboCopy在Windows批处理中比较文件夹?

换句话说,
在 Windows 批处理中以比较模式(仅列表模式)使用 RoboCopy,
RoboCopy 会检测 2 个文件夹是否相同,或者
RoboCopy 会检测 2 个文件夹是否有差异,并
批量通知用户有关这两个文件夹的 RoboCopy 结果。

--

答案1

如果您只是查找该工具,请使用批处理命令 FINDSTR。这该命令给出了一个示例,说明如何自动查找 Robocopy 比较中的差异。

相关内容