【发布时间】:2012-10-31 10:54:31
【问题描述】:
输入是这样的:
CNNCC
NCNCN
NNNCC
CCNNN
CCCCN
输出应该是这样的:
CNNCC
CCCCN
这意味着,如果有 N 出现超过 3 次,则该行将被过滤掉,否则将被保留。 (在我的工作中,我需要过滤掉超过 500 N 的 100000 行,因此性能可能很重要)
我知道如何在 awk 中按连续的N 过滤,但我不知道如何计算不连续的..
有人对此有想法吗? shell 中的解决方案也可以。
在所有答案中,我认为这个可能是最简单的:
awk -FN 'NF<=3'
【问题讨论】: