如果差异与条件匹配则打印行

如果差异与条件匹配则打印行

仅当第 2 列值之间的差异为 10000 或更大时才打印行

输入文件

1   176506  C
1   176566  T
1   188778  C
1   189699  M
1   199878  T
1   259923  H
1   268859  C
1   346868  J
1   349825  K
1   356882  U
1   396293  L

输出

1   176506  C
1   188778  C
1   199878  T
1   259923  H
1   346868  J
1   356882  U

谢谢。

答案1

我假设您的值正在增加,并且如果最后打印的行与当前行之间的差异超过阈值,您想要打印一行:

awk -v n=10000 '$2 - p >= n { print; p = $2 }' infile

输出:

1   176506  C
1   188778  C
1   199878  T
1   259923  H
1   346868  J
1   356882  U
1   396293  L

相关内容