跟老男孩学Linux运维-核心系统命令实战-第3章-文件过滤及内容编辑处理命令-uniq去除重复行

第3章 文件过滤及内容编辑处理命令

3.13.uniq 去除重复行(*****

3.13.1.命令详解

#-c:去除重复行,并计算每行出现的次数 ---常用---
#-d:只显示重复的行
#-u:只显示唯一的行

3.13.2.使用范例

1.基础范例

#3-50:去重测试案例
cat oldboy.txt

#内容
10.0.0.4
10.0.0.4
10.0.0.4

#运行
uniq oldboy.txt
uniq -c oldboy.txt

#3-51:结合 sort 去重
#uniq 只能对相邻的重复行进行去重操作,因此应先用 sort 处理文件再去重
cat oldboy.txt

#内容
10.0.0.4
10.0.0.4
10.0.0.4
10.0.0.5
10.0.0.4
10.0.0.8

#运行
uniq oldboy.txt
sort -n oldboy.txt|uniq -c  

2.企业面试题

#3-52:处理以下文件内容,将域名取出,并根据域名进行计数排序处理
cat oldboy.log

#内容
http://www.etiantian.org/index.html
http://www.etiantian.org/1.html
http://post.etiantian.org/index.html
http://mp3.etiantian.org/index.html
http://www.etiantian.org/3.html
http://post.etiantian.org/2.html

#运行
awk -F "/" '{print $3}' oldboy.log
awk -F "/" '{print $3}' oldboy.log|sort|uniq -c
awk -F "/" '{print $3}' oldboy.log|sort|uniq -c|sort -rn

#使用cut
cut -d '/' oldboy.log|sort|uniq -c|sort -rn

  

 

posted on 2020-01-24 08:44  herisson_pan  阅读(11)  评论(0)    收藏  举报

导航