awk一个数字,字符,然后相同的数字

时间:2017-11-15 18:54:05

标签: regex awk

我有一列值,其中字段以n / n开头:其中n是0到20之间的数字。

其他列也包含" n / n:"信息;我只想基于单个特定列进行过滤。

" N / N:"可以是0到20之间任意一对数字的组合(例如0/1:,1/1:,1/19:,19/19:)

我想过滤文件中第一个和第二个n在感兴趣的列中的编号相同的行(0 / 0,1 / 1,... 20/20)。

而不是为每个数字组合执行一次(每次迭代需要很长时间):

awk '$col !~ /^n\/n:/' file > filtered.file

......我希望有更简洁,更好的方式。

文件的一个例子

 1/1: 0/1: a
 1/2: 1/1: b
 0/1: 2/2: c
 3/3: 0/2: d
 0/2: 0/1: e

所需输出,基于col2过滤

 1/1: 0/1: a
 3/3: 0/2: d
 0/2: 0/1: e

1 个答案:

答案 0 :(得分:2)

TreeMap救援!

更新

awk