awk 仅在 uniq 列中打印行数

乔治

我有这样的数据集:

1 A
1 B
1 C
2 A
2 B
2 C
3 B
3 C

我有一个计算我的脚本:

  1. 搜索字符串中出现的次数

  2. 行数

    awk -v search="A" \
       'BEGIN{count=0} $2 == search {count++} END{print count "\n" NR}' input
    

这工作得很好。

我想将awk第一列中的唯一行数添加到我的单行中。

所以输出应该用\n分隔

2
8
3

我可以在单独的awk代码中执行此操作,但无法将其集成到我的原始awk代码中。

awk '{a[$1]++}END{for(i in a){print i}}' input  | wc -l 

知道如何在awk没有管道的情况下将其集成到一个解决方案中吗?

hek2mgl

看起来你想要这个:

awk -v search="A" '{a[$1]++} 
                   $2 == search {count++}
                   END{OFS="\n";print count+0, NR, length(a)}' file

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章