cat 20171015_datarecord.txt| awk -F '_' '{a[$1]++} END {for (i in a) {print i,a[i]|"sort -k 2"}}'
1.$1作為變量a(字典)的key,++進行計數;
2.i in a進行遍歷取值;
3.sort -k 2,以打印結果的第二個作為排序依據。
cat a.txt |awk -F '|' '!a[$0]++ {b[$1]++} END {for (i in b) {print i,b[i]|"sort -k2r"}}'
cat a.txt
a|2
a|3
b|1
c|2
b|1
a|1
b|10
c|0
c|11
去重后,根據第2列,降序排列。
!a[$0]++為判斷沒有相同記錄時,b[$1]++記錄$1出現次數。
a 3
c 3
b 2
注:cat a.txt |awk -F '|' '!a[$0]++ {b[$1]+=$2} END {for (i in b) {print i,b[i]|"sort -k 1r"}}'
去重后,對key進行v的求和。
c 13
b 11
a 6