linux – 在两个不同的文件中显示重复的行

前端之家收集整理的这篇文章主要介绍了linux – 在两个不同的文件中显示重复的行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有两个文件,我想显示重复的行.我试过这个,但它不起作用:

 cat id1.txt |读取ID;做grep“$id”id2.txt; DONE

我想知道是否有任何其他方式来显示文件中的重复行.
我的两个文件都包含id列表.
谢谢.

最佳答案
文件是否已排序?它们可以分类吗?

如果排序:

comm -12 id1.txt id2.txt

如果没有排序但使用bash 4.x:

comm -12 <(sort id1.txt) <(sort id2.txt)

如果您没有bash 4.x和‘process substitution’,则有使用临时文件解决方案.

你也可以使用grep -F:

grep -F -f id1.txt id2.txt

这将查找id2.txt中出现在id2.txt中的单词.这里唯一的问题是确保ID 1与每个包含1的ID不匹配.某些版本的grep中提供的-w或-x选项可在此处使用.

猜你在找的Linux相关文章