Sorting 如何格式化cat表达式的输出
我有一个这样格式的文件:Sorting 如何格式化cat表达式的输出,sorting,command-line,format,cut,Sorting,Command Line,Format,Cut,我有一个这样格式的文件: event: event1 event: event2 event: event2 event: event3 使用此命令: cat event.txt | cut -d : -f2 |sort |uniq -c |sort -n 我得到这个结果: 1 event1 1 event3 2 event2 我希望有这样的输出: event1 1 event2 2 event3 1 你有什么办法吗?如果你想让你的输出像事件[1]事件[2]…那样按eventID排序,
event: event1
event: event2
event: event2
event: event3
使用此命令:
cat event.txt | cut -d : -f2 |sort |uniq -c |sort -n
我得到这个结果:
1 event1
1 event3
2 event2
我希望有这样的输出:
event1 1
event2 2
event3 1
你有什么办法吗?如果你想让你的输出像
事件[1]事件[2]…
那样按eventID排序,就用fedorqui的解决方案吧
如果希望输出保持输入文件中col2的原始顺序:
awk -F': *' 'NR==FNR{c[$2]++;next}$2 in c{print $2,c[$2];delete c[$2]}' file file
例如:
kent$ cat f
event: event1
event: event2
event: event2
event: event4
event: event4
event: event3
kent$ awk -F': *' 'NR==FNR{c[$2]++;next}$2 in c{print $2,c[$2];delete c[$2]}' f f
event1 1
event2 2
event4 2
event3 1
是否希望结果遵循输入文件中的顺序?或者希望结果按“eventID/No”排序?