linux中一些简便的命令之sort

 

1、sort file

直接按照顺序排列

 

 

2、sort -r file

按照反序排列

 

3、sort -t 【符号】file

指定符号的分隔符,默认为空格

sort -t ';' file

 

 

4、sort -k 【列号】 file

按照定制列排序,默认按照一行排序

 

-k的语法为:[ FStart [ .CStart ] ] [ Modifier ] [ , [ FEnd [ .CEnd ] ][ Modifier ] ]

FStart ---开始行数

CStart ---行内的第几个字符

Modifier ---选项部分,一般包括r、n、b、d、f、i等

FEnd ---截止行数

CEnd ---截止行的第几个字符

点号 ---行和行内字符分隔符

逗号 ---开始和结束域的分隔符

 

所有里面,只有FStart是必须的,其他都不是必须的

举几个列子:

sort -k 1r file  ---按照第一列反序排列

sort -k 1.2 file  ---标识从第一列的第二个字符开始排序

sort -k 1.2,1.5  ---按照第一列第二个字符到第一列第五个字符进行排列

 

当前暂不支持跨域,比如

sort -k 2.3,4,5 file  ---其实作用域仅限于第二列第三个字符到第二列尾,若都相同,则从第一列比较排序

 

当然如果需要跨域,则可以如下方式:

sort -k 2.3r -k 3 -k 4.1,4.5 file  ---先按照第二列第三个字符开始反序排列,都一样就按照第三列排序,最后按照第四列第一到第五排序,若都一样,则从第一列排序

 

 

5、sort -n file

按照数字排序,默认是按照ascii码排序

 

6、sort -u file

把一样的去除掉,就是去重

 

7、sort file -o file

把排序后的结果重新写入到当前文件中

如果用重定向,文件会被清空

 

8、sort -b file

忽略每行前面的空格后再排序

 

9、sort -f file

忽略大小写后再排序

 

10、sort -M file

前三个字母按照月份进行排序,如May排在August(Aug)前面

 

posted @ 2019-02-02 14:15  水里的芋头  阅读(1494)  评论(0编辑  收藏  举报