sort命令
sort 用于排序文本数据。该数据可以位于文件中或其他命令输出中。 Sort 通常与管道一起使用
sort
-n ##纯数字排序
-u ##去冗余
|uniq -c ##去除冗余并统计冗余次数
-t ##指定分隔符
-k ##指定列
[root@localhost ~]# cat /aaa/file1
2313
434
325
324
325
32
5
325
32
4
235
23
532
[root@localhost ~]# sort -n /aaa/file1 ##升序
4
5
23
32
32
235
324
325
325
325
434
532
2313
[root@localhost ~]# sort -rn /aaa/file1 ##降序
2313
532
434
325
325
325
324
235
32
32
23
5
4
[root@localhost ~]# sort -rnu /aaa/file1 ##去掉相同数字降序
2313
532
434
325
324
235
32
23
5
4
[root@localhost ~]# sort -k 1.2 /aaa/file1 ##对第二列进行排序
4
5
32
32
324
325
325
325
23
2313
532
434
235
[root@localhost ~]# sort -k 1.2 -n /aaa/file1 ##对相同位数的数字的第二列进行排序
4
5
32
32
23
324
325
325
325
532
434
235
2313
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 ##生序并且显示冗余行
32
325
[root@localhost ~]# sort -n /aaa/file1 |uniq -u ##生序并且显示唯一行
4
5
23
235
324
434
532
2313