溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux實(shí)現(xiàn)文件內(nèi)容去重及求交并差集的方法

發(fā)布時間:2020-08-04 14:03:56 來源:億速云 閱讀:208 作者:小豬 欄目:開發(fā)技術(shù)

這篇文章主要講解了Linux實(shí)現(xiàn)文件內(nèi)容去重及求交并差集的方法,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。

一、數(shù)據(jù)去重

日常工作中,使用Hive或者Impala查詢導(dǎo)出來可能會存在數(shù)據(jù)重復(fù)的現(xiàn)象,但又不想重新執(zhí)行一遍查詢(查詢時間稍長,導(dǎo)出文件內(nèi)容多),因此想到了使用Linux命令將文件的內(nèi)容重復(fù)數(shù)據(jù)進(jìn)行去除。

案例如下:

可以看到aaa.txx有3條重復(fù)數(shù)據(jù)

Linux實(shí)現(xiàn)文件內(nèi)容去重及求交并差集的方法

想去掉多余的數(shù)據(jù),只保留一條

sort aaa.txt | uniq > bbb.txt

將aaa.txt文件中重復(fù)數(shù)據(jù)去掉,輸出到bbb.txt

Linux實(shí)現(xiàn)文件內(nèi)容去重及求交并差集的方法

可以看到bbb.txt文件中只保留了一條數(shù)據(jù)

二、數(shù)據(jù)交、并、差

1)、交集(相當(dāng)于user_2019 inner join user_2020 on user_2019.user_no=user_2020.user_no)

sort user_2019.txt user_2020.txt | uniq -d

2)、并集(相當(dāng)于 user_2019.user_no union user_2020.user_no)

sort user_2019.txt user_2020.txt | uniq

3)、差集

user_2019.txt-user_2020.txt

sort user_2019.txt user_2020.txt user_2020.txt | uniq -u

user_2020.txt - user_2019.txt:

sort user_2020.txt user_2019.txt user_2019.txt | uniq -u

看完上述內(nèi)容,是不是對Linux實(shí)現(xiàn)文件內(nèi)容去重及求交并差集的方法有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI