通常当我cat number.txt | sort -n | uniq -c
时,我会得到这样的数字:
3 43
4 66
2 96
1 97
但我需要的是后面出现的数字显示,如下所示:
43 3
66 4
96 2
97 1
请提供有关如何更改此内容的建议。谢谢。
答案 0 :(得分:3)
使用awk
更改列的顺序:
cat number.txt | sort -n | uniq -c | awk '{ print $2, $1 }'
答案 1 :(得分:3)
Perl版本:
perl -lne '$occ{0+$_}++; END {print "$_ $occ{$_}" for sort {$a <=> $b} keys %occ}' < numbers.txt
答案 2 :(得分:1)
通过GNU sed
,
cat number.txt | sort -n | uniq -c | sed -r 's/^([0-9]+) ([0-9]+)$/\2 \1/g'