linux之找出两个文件里面相同的数据
生活随笔
收集整理的這篇文章主要介紹了
linux之找出两个文件里面相同的数据
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1 問(wèn)題
找出2個(gè)文件里面重復(fù)的數(shù)據(jù)(這個(gè)問(wèn)題是csdn排名第一的大神stpeace的專(zhuān)欄在微信里面和我的交流,我當(dāng)時(shí)一臉懵逼)
文件a.txt文件內(nèi)容如下
cat a.txt 123 123 234 345 456?文件b.txt文件內(nèi)容如下
cat b.txt 234 345 456 789 789兩個(gè)文件重復(fù)的數(shù)據(jù)如下
234 345 456?
?
?
?
?
2 解決辦法
1)sort和uniq命令搭配
首先,文件a.txt和b.txt文件本身都有重復(fù)數(shù)據(jù),我么先自己去重,分別保存在c.txt和d.txt文件里面
sort -u a.txt > c.txt?或者
sort a.txt | uniq > c.txt?
sort b.txt | uniq > d.txt或者
sort -u b.txt > d.txt然后把c.txt和d.txt文件找出重復(fù)數(shù)據(jù)
sort c.txt d.txt | uniq -d 234 345 456?
?
2)awk命令
awk '{print $1}' c.txt d.txt | sort | uniq -d 234 345 456?
?
?
3)grep -f?
grep -f a.txt b.txt 234 345 456?
總結(jié)
以上是生活随笔為你收集整理的linux之找出两个文件里面相同的数据的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux之uniq命令
- 下一篇: Java之new一个对象简单过程