linux sort 命令

最近处理大量数据需要排序,使用linux sort是个简单,有效的方法.


我一般都是按列排序的,所以着重看了下按列排序的相关参数.

下面是一个例子,一共有两列数字,我要将第二列按照数字大小排序 文件名为sample.csv

514414,0003116971
4709921,0083666834
4714029,0083659466
4717305,0083676565
4731228,0083671247
4731285,0083672352
4736531,0083673521
4742303,0083669696
8195195,0083669966
8361635,0083669021

命令如下 sort -t, -k 2n,2 sample.csv

-t: 分隔符参数

-k: 这个有点复杂了, man 里面原文是这样写的

       -k, --key=POS1[,POS2]
        start  a  key at POS1 (origin 1), end it at POS2 (default end of
        line).  See POS syntax below

        关于POS是这样写的

        POS is F[.C][OPTS], where F is the field number  and  C  the  character
       position  in  the field; both are origin 1.  If neither -t nor -b is in
       effect, characters in a field are counted from  the  beginning  of  the
       preceding  whitespace.   OPTS  is  one  or  more single-letter ordering
       options, which override global ordering options for that  key.   If  no
       key is given, use the entire line as the key.

总结下-k的用法是这样的,-k后面是可以跟两个参数值的,一个是起始的位置(默认是1),另一个是结束的位置(默认是行尾),

关于起始位置POS的用法是这样的, POS包含三个信息,一个是列号,一个是字符在这个列里面的位置,这两都默认是1,如果没有指明分隔符或者-b这个参数的话就从前面的空白处开始,第三个是一个字母,是sort里面的一个选项字符例如n,r,R等.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值