给定一个可能包含重复项的数组,打印所有元素及其频率

给定一个可能包含重复项的数组,打印所有元素及其频率

输入

temperoryArray=(10 20 20 10 10 20 5 20)

输出

10 3
20 4
5  1

答案1

输出列与您想要的相反,但是:

printf '%s\n' "${temperoryArray[@]}" | sort | uniq -c
      3 10
      4 20
      1 5

如果你真的想翻转它们,你可以这样做:

printf '%s\n' "${temperoryArray[@]}" | sort | uniq -c | awk '{print $2,$1}'
10 3
20 4
5 1

相关内容