文件内容合并

问题:

按照第二列范围压缩显示

cat file:
111 1
111 2
333 7
222 6
222 9
111 3
222 10
333 3
333 4
333 5
333 6

result:
111 1-3
222 6-6
222 9-10
333 3-7


解答:

sort -n -k2,2 file|awk '{a[$1]=a[$1]" "$2}END{for(i in a)print i,a[i]}'|awk '{print $1,$2"-"$NF}'
111 1-3
222 6-10
333 3-7

你可能感兴趣的:(shell)