# uniq 命令
# 文本去重显示
有这么一个txt文件
sort.txt
1
4
5
2
4
3
6
去重看看结果
uniq sort.txt
[root@xxxx zyttest]# uniq sort.txt
1
4
5
2
4
3
6
没有去重?
实际上uniq只能按行为单位给相邻的内容做去重,
上例中的4和4中间夹了个5和2,所以需要用到刚学的sort命令,排序后,再uniq
所以你留意的话,很多时候sort和uniq都是成对出现的
再试一次
sort sort.txt | uniq
很明显,这次就一个4了
[root@xxxx zyttest]# sort sort.txt | uniq
1
2
3
4
5
6
# uniq -c 计数
这个-c计数,就很常用了
还记得查看系统cpu信息那条命令么?
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
这一条命令集合了,grep、cut、uniq
这次终于到了uniq -c了
之前不加uniq -c的结果是这样的
[root@xxxx zyttest]# cat /proc/cpuinfo | grep name | cut -f2 -d:
Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
这次加上 uniq -c
[root@xxxx zyttest]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
8 Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
发现第一列多了一个【8】,这个8就是-c计来的数
后续涉及到一些日志计数统计的命令,grep、sort、uniq、cut是经常要使用的