为文件中的重复行添加行号

use*_*633 1 bash awk command-line sed data-manipulation

我的文本文件读作:

111
111
222
222
222
333
333
Run Code Online (Sandbox Code Playgroud)

我生成的文件看起来像:

1,111
2,111
1,222
2,222
3,222
1,333
2,333
Run Code Online (Sandbox Code Playgroud)

或者生成的文件可能如下所示:

1
2
1
2
3
1
2
Run Code Online (Sandbox Code Playgroud)

我在这里指定了一个逗号作为分隔符,但是分隔符是什么并不重要---我可以在将来修改它.实际上,我甚至不需要原始文本文件内容,只需要行数字,因为我可以将行号粘贴到原始文本文件.

我只是不确定如何根据重复的条目对行进行编号.

列表中的所有项目至少重复一次.文件中没有一行出现过.

Ed *_*ton 5

$ awk -v OFS=',' '{print ++cnt[$0], $0}' file
1,111
2,111
1,222
2,222
3,222
1,333
2,333
Run Code Online (Sandbox Code Playgroud)