awk 按照文件中的某个字段排序(本例是按照第三个字段排序)
升序:
awk '{a[$3]=$0}END{for(i=1;i<=asorti(a,b);i++)print a[b[i]]}' /root/1.txt
降序:
awk '{a[$3]=$0}END{for(i=asorti(a,b);i>=1;i--)print a[b[i]]}' /root/1.txt
注意:如果排序字段有重复的内容,会造成数据丢失,推荐使用sort命令
升序:
awk '{a[$3]=$0}END{for(i=1;i<=asorti(a,b);i++)print a[b[i]]}' /root/1.txt
降序:
awk '{a[$3]=$0}END{for(i=asorti(a,b);i>=1;i--)print a[b[i]]}' /root/1.txt
注意:如果排序字段有重复的内容,会造成数据丢失,推荐使用sort命令