linux之找出两个文件里面相同的数据
生活随笔
收集整理的這篇文章主要介紹了
linux之找出两个文件里面相同的数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 問題
找出2個文件里面重復的數據(這個問題是csdn排名第一的大神stpeace的專欄在微信里面和我的交流,我當時一臉懵逼)
文件a.txt文件內容如下
cat a.txt 123 123 234 345 456?文件b.txt文件內容如下
cat b.txt 234 345 456 789 789兩個文件重復的數據如下
234 345 456?
?
?
?
?
2 解決辦法
1)sort和uniq命令搭配
首先,文件a.txt和b.txt文件本身都有重復數據,我么先自己去重,分別保存在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文件找出重復數據
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?
總結
以上是生活随笔為你收集整理的linux之找出两个文件里面相同的数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux之uniq命令
- 下一篇: Android之通过Binder机制实现