我有两个制表符分隔的文件,每个15列,n行和m行。
文件1中的行数大于file2的行数,例如文件1的行数为15行 file2中不存在的文件
我怎样才能找到这些行?
谢谢
答案 0 :(得分:2)
comm
命令将查找对这两个文件唯一的行或两者共有的行。
comm -23 <( sort file1 ) <( sort file2 )
将仅在file1中打印行(仅在file2中的行和公共行被-2
和-3
选项抑制。文件必须排序;它们如何排序并不重要排序,只要它们都以相同的键和相同的方式排序。
答案 1 :(得分:1)
这有帮助吗?
awk 'NR==FNR{a[$0];next}!($0 in a)' file2 file1
答案 2 :(得分:1)
join命令可能会有所帮助,尤其是 -a 选项:
-a FILENUM 打印来自文件FILENUM的不可用行,其中FILENUM为1或2,对应于FILE1或FILE2