如何比较不同操作系统中具有不同目录结构的源路径和目标路径?

如何比较不同操作系统中具有不同目录结构的源路径和目标路径?

源路径和目标路径有超过 10 万个不同的目录。我想比较源路径和目标路径之间的文件,而不考虑目录之间的差异。

换句话说,我想匹配源路径中的文件是否在目标路径中,即使用它们包含的文件,无论它们位于层次结构中的什么位置。

如果存在差异,则这些差异将被输出到文本文件。

我需要能够使用跨平台解决方案,例如 Windows 和 Linux。

我怎样才能实现这个目标?

答案1

在两个系统上创建一个包含相同格式的所有路径的文件。

例如find在 Linux 上使用,find在 Windows 上使用 WSL 或 Cygwin。或者为此编写一个可以在两个系统上安装的简单工具。

然后用来diff比较两个文本文件的所有路径。

答案2

您可以使用文件哈希来比较文件并找到它们,即使文件夹结构已经发生变化。

可以找到许多哈希实用程序。例如,在 Windows 上,您可以使用 hellzerg/哈希,并在文章中进行了评论 使用 Windows 哈希函数生成并比较文件哈希值

在此处输入图片描述

答案3

在 Windows 上,您可以使用 Total Commander(同步目录选项)和 Samba 连接到 Linux/Mac:

  • 您将看到哪些文件缺失以及哪些文件存在于一侧
  • 您将看到文件大小
  • 您将看到双方最后修改的日期和时间
  • 您可以看到左边的文件和右边的文件(文本,图像)
  • TC 将允许您配置文件属性的比较选项
  • 结果你可以同步比较的双方

https://www.ghisler.com/download.htm

Double Commander 还有以下选项:https://sourceforge.net/p/doublecmd/wiki/Download/

相关内容