Linux 兩個文件求交集、並集、差集


一、交集

sort a.txt b.txt | uniq -d

二、並集

sort a.txt b.txt | uniq 

三、差集

a.txt-b.txt:

sort a.txt b.txt b.txt | uniq -u

b.txt - a.txt:

sort b.txt a.txt a.txt | uniq -u

四、相關的解釋

使用sort可以將文件進行排序,可以使用sort后面的玲玲,例如 -n 按照數字格式排序,例如 -i 忽略大小寫,例如使用-r 為逆序輸出等

uniq為刪除文件中重復的行,得到文件中唯一的行,后面的命令 -d 表示的是輸出出現次數大於1的內容 -u表示的是輸出出現次數為1的內容,那么對於上述的求交集並集差集的命令做如下的解釋:

sort a.txt b.txt | uniq -d:將a.txt b.txt文件進行排序,uniq使得兩個文件中的內容為唯一的,使用-d輸出兩個文件中次數大於1的內容,即是得到交集

sort a.txt b.txt | uniq :將a.txt b.txt文件進行排序,uniq使得兩個文件中的內容為唯一的,即可得到兩個文件的並集

sort a.txt b.txt b.txt | uniq -u:將兩個文件排序,最后輸出a.txt b.txt b.txt文件中只出現過一次的內容,因為有兩個b.txt所以只會輸出只在a.txt出現過一次的內容,即是a.txt-b.txt差集

對於b.txt-a.txt為同理

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM