shell腳本去重的三種方法小結(jié)
測試文件如下
jason jason jason fffff jason
第一種去重方法: sort -u 文件名 或者 cat 文件名 | sort -u
[root@bogon ~]# sort -u test fffff jason
但這樣只是將去重后的結(jié)果打印在屏幕上,如果想將去重后的內(nèi)容保存下來,語句為:
sort -u 文件名 > 新文件名
或者
cat 文件名 | sort -u > 新文件名
即可將去重后的內(nèi)容保存在新文件名中
第二種去重方法: uniq 文件名 或者 cat 文件名 | uniq
[root@bogon ~]# uniq test jason fffff jason
由此可見,uniq需要先排序后才能去重,同時將去重后的結(jié)果保存在新文件中:cat 文件名 | sort | uniq > 新文件名
第三種去重方法:sort、管道和uniq結(jié)合運用
(1)去除重復(fù)并保留一份重復(fù)的數(shù)據(jù)
[root@bogon ~]# sort test|uniq fffff jason
(2)去除所有重復(fù)的行(不保留重復(fù)的行),并計算行數(shù)
[root@bogon ~]# sort test|uniq -uc
1 fffff(3)找出所有重復(fù)的行,并計算行數(shù)
[root@bogon ~]# sort test|uniq -dc
4 jason(4)根據(jù)某個字段去重
[root@bogon ~]# sort -k 1,1 -u test fffff jason
查看sort的用法,-k參數(shù)是這么描述的:
-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腳本去重的幾種方法小結(jié)的文章就介紹到這了,更多相關(guān)shell腳本去重內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
shell之創(chuàng)建文件及內(nèi)容的方法示例
這篇文章主要介紹了shell之創(chuàng)建文件及內(nèi)容的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
Shell獲取當(dāng)前正在執(zhí)行腳本的絕對路徑
本文主要介紹了Shell獲取當(dāng)前正在執(zhí)行腳本的絕對路徑,主要有三種方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09
MAC中用Shell腳本批量裁剪各種尺寸的App圖標(biāo)
這篇文章主要介紹了在MAC中用Shell腳本批量裁剪各種尺寸的App圖標(biāo)的方法,需要的朋友可以參考下2014-03-03
Apache使用 .htaccess 來實現(xiàn)強(qiáng)制https訪問的方法
下面小編就為大家?guī)硪黄狝pache使用 .htaccess 來實現(xiàn)強(qiáng)制https訪問的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03
Shell腳本實現(xiàn)監(jiān)控swap空間使用情況和查看占用swap的進(jìn)程
這篇文章主要介紹了Shell腳本實現(xiàn)監(jiān)控swap空間使用情況和查看占用swap的進(jìn)程,曾經(jīng)有一段時間機(jī)器的swap不停上漲,監(jiān)控后發(fā)現(xiàn)是一些java進(jìn)程占用swap空間后,完全不釋放,殺死這些java進(jìn)程后,釋放swap,需要的朋友可以參考下2014-12-12

