如何递归比较具有不同名称的文件

How To Recursivley Diff Files With Different Names

我有两个目录,我想比较其中的内容。我要比较的顶级目录下的所有子目录的结构都是一样的,只是文件名略有不同。例如。我想知道 /d1/foo/bar/somefile-v2.txt 是否与 /d2/foo/bar/somefile-v3.txt 不同。

我发现参考资料说应该可以使用 diff 执行此操作,但我找不到任何文档告诉我如何指定 diff 如何从一个文件映射给对方起名字。

您指的是 diff 的递归选项,它会依次将目录中的所有文件与另一个目录中的文件进行比较。

通过阅读您的评论,我们可以假设:

  1. 文件名不同
  2. 单独使用 diff 是不够的。

您可以只编写一个 shell 脚本来解决这个问题,但要回答您的问题:不,这不能单独使用 diff 来完成。

注意:您可以对整个 1 个字符的差异使用通配符,但它不会按照您希望的方式递归工作。