1.uniq去重命令讲解
閱讀目錄
- uniq命令:
uniq命令:
常見參數:
-c,–count *****
在每行旁邊顯示改行重復出現的次數
-d,–repeated
僅顯示重復出現的行,2次或2次以上的行,默認的去重包含1次。
例子:
a.只對相鄰的相同行內容去重。
[root@nfs-server test]# cat test.txt
10.0.0.9
10.0.0.8
10.0.0.7
10.0.0.7
10.0.0.8
10.0.0.8
10.0.0.9
[root@nfs-server test]# uniq test.txt
10.0.0.9
10.0.0.8
10.0.0.7
10.0.0.8
10.0.0.9
b.sort命令讓重復的行相鄰
[root@nfs-server test]# sort test.txt
10.0.0.7
10.0.0.7
10.0.0.8
10.0.0.8
10.0.0.8
10.0.0.9
10.0.0.9
c.先用sort命令將重復的行相鄰,接著使用uniq去重
[root@nfs-server test]# sort test.txt|uniq
10.0.0.7
10.0.0.8
10.0.0.9
[root@nfs-server test]#
d.將兩個命令整合起來,可使用sort -u代替
[root@nfs-server test]# sort -u test.txt
10.0.0.7
10.0.0.8
10.0.0.9
e.去重計數
[root@nfs-server test]# sort test.txt|uniq -c
210.0.0.7
310.0.0.8
210.0.0.9
uniq功能:
-c,–count 去重計數
企業案例:
考試題:處理以下文件內容,將域名取出并根據域名進行計數排序處理:(百度和SOHU面試題)
test.log
http://www.judong.org/index.html
http://www.judong.org/1.html
http://post.judong.org/index.html
http://mp3.judong.org/index.html
http://www.judong.org/3.html
http://post.judong.org/2.html
解答:
法1:
[root@nfs-server test]# sort test.log|awk -F “[?/]+”’{print $2}’|uniq -c
1 mp3.judong.org
2 post.judong.org
3 www.judong.org
法2:
[root@nfs-server test]# awk -F /’{print $3}’ test.log|sort
mp3.judong.org
post.judong.org
post.judong.org
www.judong.org
www.judong.org
www.judong.org
[root@nfs-server test]# awk -F /’{print $3}’ test.log|sort|uniq -c
1 mp3.judong.org
2 post.judong.org
3 www.judong.org
[root@nfs-server test]#
讓降序排列:
[root@nfs-server test]# awk -F /’{print $3}’ test.log|sort|uniq -c|sort -r ##-r,表示倒序排列
3 www.judong.org
2 post.judong.org
1 mp3.judong.org
[root@nfs-server test]#
法3:
cut 切割,簡單的取列命令
-d:指定分隔符
-f數字:表示取第幾列。-f3,6
-c按字符取
[root@nfs-server test]# cut -d /-f3 test.log|sort -r|uniq -c
3 www.judong.org
2 post.judong.org
1 mp3.judong.org
[root@nfs-server test]#
總結
以上是生活随笔為你收集整理的1.uniq去重命令讲解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 清理buffer/cache/swap的
- 下一篇: 2.sort 排序命令讲解