加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

vim 中如何利用系统的sort命令对数据排序

(2010-07-12 09:42:40)
标签:

杂谈

分类: c c++
假设有如下数据,以空格为数据列分割:
1  何维川   124.63     172  0.72
2  张子寅   99.67      172  0.58
3  周广滨   93.34      188  0.50
4  陈兴     41.86      188  0.22
5  薛永成   26.68      188  0.14
6  张永福   18.25      188  0.10
7  李华田   18.25      188  0.10
8  葛祥营   11.89      164  0.07
9  王天民   -16.55     156  -0.11
10 刘峰     -16.19     152  -0.11
11 郭居岗   -86.73     152  -0.57
12 杨军     -213.45    152  -1.40

如果我们想以第4列数据进行排序,可以在vim中如此做:
1,12!sort -r -n -k4.1,5

-r 是降序排序
-n 是按数字大小排序
-k,表示根据那个字段排序,4.1,表示第4列第一个字符开始 ,5表示到第5个字段为结束
-t 后面跟分隔符,缺省是空格

运行后数据如下:
7  李华田   18.25      188  0.10
6  张永福   18.25      188  0.10
5  薛永成   26.68      188  0.14
4  陈兴     41.86      188  0.22
3  周广滨   93.34      188  0.50
2  张子寅   99.67      172  0.58
1  何维川   124.63     172  0.72
8  葛祥营   11.89      164  0.07
9  王天民   -16.55     156  -0.11
12 杨军     -213.45    152  -1.40
11 郭居岗   -86.73     152  -0.57
10 刘峰     -16.19     152  -0.11

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有