你可能不知道的Linux/GNU bash sort多列排序功能
(转载请注明原创于潘多拉盒子)
Linux man pages的缺点就是,如果你不会用某个命令,那么看完了多半还是不会。原因是,没有例子!比较囧吧?
sort是提供了多列排序的功能的。通过-k选项,可以搞出来若干个排序列组,每个组内按照指定的原则排序,优先级从高到低。
比如一个文件内容如下:
Tom Mathematics 95
Jack Mathematics 99
Tom Physics 78
Jack Physics 65
如果想将同一个名字的不同科目的分数按从高到低排列起来,那么就是
sort -k1,1 -k3nr,3
是不是很神奇呢?
每一个-k选项指定了一个排序列组,逗号左边的数字是起始列,逗号右边的数字是结束列号(从1开始),其余的选项为specs。比如-n表示按数字排序,-r表示反向(从高到低)排序。
有些说明文档给出来的是错误的,请注意哈。
你可能不知道的Linux/GNU bash sort多列排序功能的更多相关文章
- 你可能不知道的 Linux 命令行网络监控工具
http://developer.51cto.com/art/201505/476651_2.htm 对任何规模的业务来说,网络监控工具都 是一个重要的功能.网络监控的目标可能千差万别.比如,监控活动 ...
- 【转】又一波你可能不知道的 Linux 命令行网络监控工具
对任何规模的业务来说,网络监控工具都是一个重要的功能.网络监控的目标可能千差万别.比如,监控活动的目标可以是保证长期的网络服务.安全保护.对性能进行排查.网络使用统计等.由于它的目标不同,网络监控 ...
- 你可能不知道的shell、bash二三事(Centos 7)
个人.bashrc: ~/.bashrc: # .bashrc # User specific aliases and functions alias rm='rm -i' alias cp='cp ...
- 应该知道的Linux技巧
作者:陈皓(花名:钻风) 这篇文章来源于Quroa的一个问答<What are some time-saving tips that every Linux user should know?& ...
- 你可能不知道的Shell
Shell也叫做命令行界面,它是*nix操作系统下用户和计算机的交互界面.Shell这个词是指操作系统中提供访问内核服务的程序. 这篇文章向大家介绍Shell一些非广为人知.但却实用有趣的知识,权当品 ...
- 应该知道的Linux技巧【转】
这篇文章来源于Quroa的一个问答<What are some time-saving tips that every Linux user should know?>—— Linux用户 ...
- 应该知道的Linux技巧(转载)
这篇文章来源于Quroa的一个问答<What are some time-saving tips that every Linux user should know?>—— Linux用户 ...
- 每个极客都应该知道的Linux技巧
每个极客都应该知道的Linux技巧 2014/03/07 | 分类: IT技术 | 0 条评论 | 标签: LINUX 分享到:18 本文由 伯乐在线 - 欣仔 翻译自 TuxRadar Linux. ...
- 你可能不知道的陷阱, IEnumerable接口
1. IEnumerable 与 IEnumerator IEnumerable枚举器接口的重要性,说一万句话都不过分.几乎所有集合都实现了这个接口,Linq的核心也依赖于这个万能的接口.C语言的 ...
随机推荐
- in 和 exist 区别
select * from Awhere id in(select id from B) 以上查询使用了in语句,in()只执行一次,它查出B表中的所有id字段并缓存起来.之后,检查A表的id是否与B ...
- 设置VMWARE通过桥接方式使用主机无线网卡上网(zz)
环境:WIN7旗舰版,台式机,U盘无线上网卡. 虚拟软件:VMware9.0,虚拟系统:CentOS6.4 需要实现虚拟机以独立机形式工作和上网. 先介绍一下VMware网络设置的三种方式 1 Hos ...
- CSS的优先级规则
CSS的优先级规则有两类 1.位置群组规则 最高优先级为元素内嵌的style样式,如<div style=” “></div> 次高优先级为html头部中的<style& ...
- First step of using junit---------Software Testing Lab 1---2016.03.18
1. Install junit a) Download “junit.jar” b) In eclipse, Windows->Preferences->Java-& ...
- <javascript搞基程序设计>笔记2015-9-25
1.一元加减 var a=28; alert(--a); //27,先减后用 alert(a--); //27,先用后减 alert(a); //26, 2.位操作符 按位非(NOT):按位取反:符号 ...
- 黑马程序员——有关protocol代理模式的举例说明
学习了protocol协议的基本原理和使用方法之后 ,下面就看一下在程序中是怎么体现这种代理思想的. 假定有个人jack需要找一个厨师为自己做饭,当他想要吃饭的时候就可以让厨师给他做好饭.这一需求如何 ...
- linux3.0.4编译LDD中的scull全过程
按照惯例,我是应该先写一些本章的收获的,不过太晚了. 在看完第三章之后开始编译,错误一堆,几乎崩溃,幸亏经过不断的百度,总算解决了问题,我发现 我遇到问题比较多,算是集中七个龙珠了吧,感谢先行的大神们 ...
- Struts Convention Plugin 流程 (2.1.6+)
首先添加lib: <dependency> <groupId>org.apache.struts</groupId> <artifactId>strut ...
- xdebug初步
;加载xdebug模块. 根据PHP版本来选择是zend_extension还是zend_extension_ts ts代表线程安全 被坑过1次zend_extension="\web\ ...
- extjs 学习笔记(二)
EXTJS实用开发指南 1. 要使用ExtJS 框架的页面中一般包括下面几句: <link rel="stylesheet" type="text/css" ...