我有 61 个文件(文件名类似于 cutpathid-hca.txt、cutpathid-hey.txt、cutpathid-hpl.txt、cutpathid-hpyd.txt、cutpathid-hpz.txt),每个文件都包含如下列表,我想要比较它们并打印每个文件中的相似性和差异及其文件名。
00010
00020
00030
00040
00051
00052
00500
00520
00620
00630
00640
00650
00190
00680
00910
00920
00061
00071
00072
00121
00561
00564
00565
00592
01040
00230
00240
00250
00260
00270
00280
00290
00300
00310
输出应该看起来像
cutpathid-hca.txt、cutpathid-hey.txt、cutpathid-hpl.txt、cutpathid-hpyd.txt、cutpathid-hpz.txt 中的类似行
00010
00020
00030
00040
00051
00052
00500
00520
00620
00630
00640
00650
00190
00680
00910
00920
00061
00071
00072
00121
cutpathid-hca.txt 中的唯一行
00240 00250 00260
cutpathid-hpl.txt 中的唯一行
00290 00300
cutpathid-hpz.txt 中的唯一行
00051 00052
答案1
遗憾的是,标准diff
一次仅支持两个文件。
您可以轻松安装扩散(它是一个 python 程序,因此它应该适用于每个“最近的”linux/bsd/*nix 发行版),看起来它可以一次比较 2 个以上的文件。
根据评论编辑
其实Diffuse
就是一个GUI程序。我刚刚安装了它并用 3 个文件进行了快速测试。
命令是:
diffuse /tmp/file_1.txt /tmp/file_2.txt /tmp/file_3.txt
结果如下图所示: