Shell腳本去重的幾種方法實(shí)例
更新時間:2015年07月10日 10:53:39 投稿:junjie
這篇文章主要介紹了Shell腳本去重的幾種方法實(shí)例,本文直接給出代碼實(shí)例,需要的朋友可以參考下
測試文件
復(fù)制代碼 代碼如下:
[root@bogon ~]# cat >test
jason
jason
jason
fffff
jason
按 Ctr + D保存
1、sort -u
復(fù)制代碼 代碼如下:
[root@bogon ~]# sort -u test
fffff
jason
2、uniq
復(fù)制代碼 代碼如下:
[root@bogon ~]# uniq test
jason
fffff
jason
由此可見,uniq需要先排序后才能去重
3、sort、管道和uniq結(jié)合運(yùn)用
去除重復(fù)并保留一份重復(fù)的數(shù)據(jù)
復(fù)制代碼 代碼如下:
[root@bogon ~]# sort test|uniq
fffff
jason
去除所有重復(fù)的行(不保留重復(fù)的行),并計(jì)算行數(shù)
復(fù)制代碼 代碼如下:
[root@bogon ~]# sort test|uniq -uc
1 fffff
找出所有重復(fù)的行,并計(jì)算行數(shù)
復(fù)制代碼 代碼如下:
[root@bogon ~]# sort test|uniq -dc
4 jason
根據(jù)某個字段去重
將原有數(shù)據(jù)改為
復(fù)制代碼 代碼如下:
[root@bogon ~]# more test
jason 1
jason 2
jason 1
fffff 2
jason 3
[root@bogon ~]# sort -k 1,1 -u test
fffff 2
jason 1
man sort查看sort的用法,-k參數(shù)是這么描述的:
復(fù)制代碼 代碼如下:
-k, --key=POS1[,POS2]
start a key at POS1 (origin 1), end it at POS2 (default end of line)
也就是說-k哪幾個列進(jìn)行排序,pos1是開始列,pos2是結(jié)束列
相關(guān)文章
shell腳本學(xué)習(xí)指南[二](Arnold Robbins & Nelson H.F. Beebe著)
這篇文章主要介紹了shell腳本學(xué)習(xí)指南[二](Arnold Robbins & Nelson H.F. Beebe著),需要的朋友可以參考下2014-02-02shell向文件中添加新內(nèi)容的實(shí)現(xiàn)方法
Shell腳本是一種為shell編寫的腳本程序,下面這篇文章主要給大家介紹了關(guān)于shell向文件中添加新內(nèi)容的實(shí)現(xiàn)方法,需要的朋友可以參考下2023-06-06一個監(jiān)控Squid運(yùn)行進(jìn)程數(shù)并自動重啟的簡潔Shell腳本分享
這篇文章主要介紹了一個監(jiān)控Squid運(yùn)行進(jìn)程數(shù)并自動重啟的簡潔Shell腳本分享,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-12-12awk實(shí)現(xiàn)Left、join查詢、去除重復(fù)值以及局部變量講解例子
這篇文章主要介紹了awk實(shí)現(xiàn)Left、join查詢、去除重復(fù)值以及局部變量講解例子,awk的高級使用技巧,需要的朋友可以參考下2014-07-07