sort命令以及uniq命令

来源:互联网 发布:日本好听的歌 知乎 编辑:程序博客网 时间:2024/06/06 17:25

sort命令

sort 用于排序文本数据。该数据可以位于文件中或其他命令输出中。 Sort 通常与管道一起使用

sort    -n          ##纯数字排序    -u          ##去冗余    |uniq -c        ##去除冗余并统计冗余次数    -t          ##指定分隔符    -k          ##指定列
[root@localhost ~]# cat /aaa/file1231343432532432532532532423523532[root@localhost ~]# sort -n /aaa/file1   ##升序452332322353243253253254345322313[root@localhost ~]# sort -rn /aaa/file1   ##降序231353243432532532532423532322354[root@localhost ~]# sort -rnu /aaa/file1   ##去掉相同数字降序2313532434325324235322354[root@localhost ~]# sort -k 1.2 /aaa/file1    ##对第二列进行排序453232324325325325232313532434235[root@localhost ~]# sort -k 1.2 -n /aaa/file1   ##对相同位数的数字的第二列进行排序453232233243253253255324342352313

uniq 命令

uniq“ 删除 ”文件中重复的相邻行。若要只打印文件中出现的唯一行(“ 删除 ”所有重复行 ), 必须首先对uniq 的输入进行排序。由于可以为uniq 指定其决策所基于的字段或列 , 因此这些字段或列是对其输入进
行排序所必须的字段或列。如果未与选项一起使用 , uniq 会使用整个记录作为决策键 , 删除其输入中的重复行

sort file |uniq -c      ##去除冗余并统计冗余次数                -d      ##显示冗余行                -u      ##显示唯一行
[root@localhost ~]# sort -n /aaa/file1 |uniq -c ##生序并且去除冗(rong)余并统计冗余次数      1       1 4      1 5      1 23      2 32      1 235      1 324      3 325      1 434      1 532      1 2313[root@localhost ~]# sort -n /aaa/file1 |uniq -d  ##生序并且显示冗余行32325[root@localhost ~]# sort -n /aaa/file1 |uniq -u  ##生序并且显示唯一行45232353244345322313
0 0