如何在Beyond Compare文件夹对比中筛选指定路径列表内的文件?
用Beyond Compare仅对比指定文件的方法
你有两个结构相似的文件夹,路径分别为C:\AAA\BBB\P和C:\AAA\CCC\P,内部包含大量文件及子文件夹,现在需要仅对比预先列出的特定文件(示例文件如下),忽略其余文件:
C:\AAA\BBB\P\Ade.AutomationShell.UIImpl\Cockpit\Presenter\LedPresenter.cs
C:\AAA\BBB\P\Ade.Compare.Network\Trees\NetworkNodeTreeFactory.cs
C:\AAA\BBB\P\Ade.Compiler.PlcNextImpl\Tasks\GenerateConfigurationFolder.cs
以下是两种实用的实现方法:
方法一:自定义文件名过滤规则
- 打开Beyond Compare,新建文件夹对比会话,分别加载两个目标文件夹
C:\AAA\BBB\P和C:\AAA\CCC\P。 - 按
Ctrl+R打开会话规则设置窗口,切换到文件名过滤器标签页。 - 将使用语法切换为
正则表达式,在包含框中填入匹配指定文件的规则(需把绝对路径转为相对根文件夹的路径,同时转义特殊字符):^Ade\.AutomationShell\.UIImpl\\Cockpit\\Presenter\\LedPresenter\.cs$|^Ade\.Compare\.Network\\Trees\\NetworkNodeTreeFactory\.cs$|^Ade\.Compiler\.PlcNextImpl\\Tasks\\GenerateConfigurationFolder\.cs$ - 在排除框中填入
*,勾选启用过滤器后点击确定。 - 返回文件夹对比窗口刷新,此时只会显示你指定的文件,直接对比即可。
方法二:加载预定义文件列表对比
- 整理一个文本文件(比如命名为
compare_files.txt),只保留文件相对于根文件夹的路径,格式如下:Ade.AutomationShell.UIImpl/Cockpit/Presenter/LedPresenter.cs Ade.Compare.Network/Trees/NetworkNodeTreeFactory.cs Ade.Compiler.PlcNextImpl/Tasks/GenerateConfigurationFolder.cs - 打开Beyond Compare,新建文件夹对比会话并加载两个根文件夹。
- 点击顶部菜单栏的视图 -> 加载文件列表,为左右两侧选择刚才创建的文本文件(因文件夹结构相似,同一个列表即可)。
- 加载完成后,会话窗口只会显示列表中的文件,可直接进行对比。
注意事项
- 若需对比的文件数量较多,方法二比方法一更高效易维护。
- 路径分隔符使用
/或\\均可,Beyond Compare会自动识别兼容。
内容的提问来源于stack exchange,提问作者Joniale
相关产品推荐
相关产品推荐

