使用命令行工具按排序顺序计算重复项

let*_*nje 4 bash command-line-interface count

我有一个命令 (cmd1),它通过日志文件 grep 过滤掉一组数字。数字按随机顺序排列,因此我使用sort -gr反向排序的数字列表。此排序列表中可能存在重复项。我需要找到该列表中每个唯一数字的计数。

例如,如果 cmd1 的输出是

100 100 100 99 99 26 25 24 24
Run Code Online (Sandbox Code Playgroud)

我需要另一个命令,我可以将上述输出通过管道传输到,以便我得到:

100 3 99 2 26 1 25 1 24 2
Run Code Online (Sandbox Code Playgroud)

Eva*_*son 15

如果您可以处理格式略有不同的输出,则可以执行以下操作:

cmd1 | tr " " "\n" | uniq -c
Run Code Online (Sandbox Code Playgroud)

你会回来:

  3 100
  2 99
  1 26
  1 25
  2 24
Run Code Online (Sandbox Code Playgroud)