a
b
b
c
c
c


我正在寻找一种方法(使用linux命令)将上述文本文件转换为以下内容:

a 1
b 1
b 2
c 1
c 2
c 3


基本上,从第一行开始读取并计数直到某行的唯一字符的出现,然后将当前出现的唯一字符列出到该行。在上述情况下,“ a”,“ b”和“ c”是唯一字符,并且唯一字符(例如“ c”)的出现从1开始到“ c”的总出现。

最佳答案

只要跟踪它们到目前为止出现了多少次:

$ awk '{print $1, ++a[$1]}' file
a 1
b 1
b 2
c 1
c 2
c 3

关于linux - 计算唯一字符并列出每行的当前计数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34323481/

10-13 07:26