有一个文本文件, 第一列是日期格式为'YYYYMMDD', 第二列是文件名, 我想首先对第二列按字母顺序排序,然后在这个基础上对第一列逆序排序。
类似于sql里的select date, filename from t_name order by filename, date desc;
文件如下:
20090105 abc.txt
20090105 xyz.txt
20090105 follow.txt
20090113 follow.txt
20090112 abc.txt
经过sort之后, 文件变成
20090112 abc.txt
20090105 abc.txt
20090113 follow.txt
20090105 follow.txt
20090105 xyz.txt
答案: sort -k2,2 -k1,1nr ur_file
我之前用的是 sort -k2,2 -nrk1,1 发现排序的结果是
20090113 follow.txt
20090112 abc.txt
20090105 xyz.txt
20090105 follow.txt
20090105 abc.txt
原来把nr放在-kn,m后面就OK
阅读(3620) | 评论(0) | 转发(0) |