diff命令只获取不同行的数量

时间:2014-12-01 20:41:19

标签: linux shell ubuntu

我可以使用diff命令查明两个文件是否有k行相同?

我不想要上下文差异,只是两个文件之间不同的行总数。如果结果只是一个整数,则效果最佳。

THX!

2 个答案:

答案 0 :(得分:16)

是的,你可以,并且以真正的Linux方式,你可以使用管道连接的许多命令来执行任务。

首先,您需要使用 diff 命令来获取文件中的差异。

diff file1 file2

这将为您提供更改列表的输出。您感兴趣的是前缀为'>'符号

您可以使用 grep 工具按以下方式对其进行过滤

diff file1 file2 | grep "^>"

最后,如果您有自己感兴趣的更改列表,只需在行模式下使用 wc 命令来计算更改次数。

diff file1 file2 | grep "^>" | wc -l

你有一个完美的例子,说明了Linux的全部理念。

答案 1 :(得分:8)

netgenerate可以完成工作的所有第一部分但不计算;剩下的就是diff

wc -l