标签归档:sort

sort+uniq计算重复行

1.对于重复行的不同处理:

sort和uniq都可以去除重复行,
sort是去除所有重复行
uniq是去除连续的重复行,中间不能隔和其他信息

2.uniq中的-c选项:打印每一重复行出现的次数,导致我们统计的时候会直接使用这一命令,而不用编写或者使用复杂的命令。
但是它对重复行的定义是连续的,所有我们就用到的sort来排序,使相同的行连续起来。再利用uniq统计数量。

这就是著名的”sort | uniq -c”统计数量了。你也可以”sort | uniq -c | sort -nr”来排序。

当然sort和uniq还有许多不同的选项,选择在不同的时候,使用合适的命令才是我们最后的选择。

sort -u -k 7n port.txt,netstat -anpt >> port.txt

[root@adp ~]# sort -u -k 7n port.txt
tcp        0      0 222.222.222.222:80             60.21.136.42:52059          SYN_RECV    –
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      2786/portmap
tcp        0      0 0.0.0.0:867                 0.0.0.0:*                   LISTEN      2805/rpc.statd
tcp        0      0 :::22                       :::*                        LISTEN      3004/sshd
tcp        0      0 0.0.0.0:21                  0.0.0.0:*                   LISTEN      3029/vsftpd
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      3048/sendmail: acce
tcp        0      0 0.0.0.0:2583                0.0.0.0:*                   LISTEN      3177/perl
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      16959/adpmain
tcp        0      0 ::ffff:222.73.23.24:22      ::ffff:119.57.32.69:50122   ESTABLISHED 20767/0
tcp        0      0 0.0.0.0:631                 0.0.0.0:*                   LISTEN      23339/cupsd
tcp        0      0 0.0.0.0:2102                0.0.0.0:*                   LISTEN      29924/mysqld