例如我有一个像:
这样的文件 apple
apple
strawberry
我想要实现的是打印连续行(apple)并计算连续行数(2)如下:apple-2使用awk。
到目前为止我的代码是这样的,但它执行以下操作:apple1-apple1。
awk '{current = $NF;
getline;
if($NF == current) i++;
printf ("%s-%d",current,i) }' $file
提前谢谢。
答案 0 :(得分:1)
uniq -c
和awk如何过滤:
$ uniq -c foo|awk '$1>1'
2 apple
答案 1 :(得分:0)
假设:
$ cat file
apple
apple
strawberry
mango
apple
strawberry
strawberry
strawberry
你可以这样做:
$ awk '$1==last{seen[$1]++}
{last=$1}
END{for (e in seen)
print seen[e]+1, e}' file
2 apple
3 strawberry