Winmerge:筛选文件类型并包括子文件夹



我在winmerge中创建了一个过滤器,以便它只比较特定的文件类型。筛选器如下所示:

def: exclude
f: .xml$
f: .csv$
f: .rteparams$
f: .rteswb$
f: .rteudp$
f: .rte$
f: .cfg$

这工作正常,但比较不会在子文件夹中检查,即使我选择了"包括子文件夹"。

如果我在过滤器中添加一行:

d: \CONFIGURATION$

然后它也将检查此文件夹。但是我有太多文件夹,所以我无法全部添加它们。如果我添加这一行:

d: \*$

然后它将遍历所有子文件夹,但将检查所有文件类型,而不仅仅是我指定的文件类型。

有人可以帮忙吗?将不胜感激。

令人沮丧的是,我可以使用WinMerge执行此操作的唯一方法是使用包含(def:include(过滤器并使用PowerShell构建一个大文件扩展名列表。 请记住,"包含"的 WinMerge 筛选器表示"包含(松散(筛选器允许通过所有不符合规则的项目"。 嘶哑但有效。

PowerShell:

gci C:PathToYourFolder* -exclude *.bat, *.pl -recurse | select Extension | % { $ext = $_.Extension; if (${ext}){ echo "f: ${ext}$" } } | sort -uniq

您可以在希望 WinMerge 比较的所有扩展的"-exclude "参数中添加参数值。

缺点是当您扫描新文件夹或同事添加扩展名为".backup5"的新文件时,您必须畏缩并忍受看着垃圾,或者重建或编辑过滤器。

相关内容

  • 没有找到相关文章