查找两个文件之间有多少行不同

时间:2013-09-10 02:43:10

标签: shell unix pipe wc

编写另一个使用命令管道的脚本将2个文件作为参数, 比较它们的内容并计算有多少行不同。你会用的 wc –l计算不同的行数。

我已经尝试过我能想到的所有事情。我尝试过cmpcommdiff。我不是在寻找一个完整的解决方案,只是朝着正确的方向发展。我会用什么命令呢?

尝试过各种标签组合。

cmp file1 file2 | wc -l

不知怎的,我需要编辑它才能正常工作,显然不一定使用cmp命令。

2 个答案:

答案 0 :(得分:2)

这应该做你想要的事情

diff -U 0 file1 file2 | grep -c ^@

例如 file1包含

aaa
bbb
ccc

file2包含

aaa
ccc
ddd

结果:

 diff -U 0 file1 file2 | grep -c ^@
 2

答案 1 :(得分:0)

我发现并排diff抑制上下文线是一种有效的方法:

diff -y --suppress-common-lines file1 file2 | wc -l