NR == FNR不返回相同的列

时间:2019-05-28 20:26:54

标签: awk grep

我正在使用awk解析一些过滤的数据。我正在打印与file2中的file1中的第2列匹配的任何内容,但是当我将二者取反时,会得到不同的结果(预期)。但是当我使用 grep -v file3 [包含$ 2] 我没有看到其他六个值。

我尝试了在stackoverflow上发现的NR == FNR的各种迭代,它们为我提供了2816和2810行的相同文件,但是grep逆运算似乎无法解决这六个附加值。从中我可以看到,尽管增加了6条线,但所有线都是相等的。

   awk 'NR==FNR{a[$2];next} ($2) in a 'file2 file1 > temp1
   awk 'NR==FNR{a[$2];next} ($2) in a 'file1 file2 > temp2

行数

  wc -l temp1; 2816
  wc -l temp2; 2810

wc

 166593  999557 6053192 file1 
 17504 105024 658110 file2

0 个答案:

没有答案