查找多个文件共有的行

时间:2010-07-10 04:01:43

标签: linux compare comm

我正在尝试确定哪个标头声明了特定的功能。我用grep来查找函数使用的实例;现在,我想找到所有文件包含哪个标题。我知道comm utility;但是,它只能比较两个排序的文件。是否有一个Unix实用程序可以找到任意数量的未排序的文件之间的公共行,或者我必须自己编写?

1 个答案:

答案 0 :(得分:1)

 cat *.c | sort | uniq -c | grep -e '^ *COUNT #include'

其中COUNT是传递给cat的文件数。在游戏中,我使用这个变体来查看我#include的文件至少10次:

 cat *.c | sort | uniq -c | grep -e '^ *[0-9][0-9]\+ #include'