linux 中 两个文件取交集、并集、特有项

1、测试数据

复制代码
root@ubuntu01:/home/test# ls   ## 测试数据
a.txt  b.txt
root@ubuntu01:/home/test# cat a.txt   
a
b
c
d
e
root@ubuntu01:/home/test# cat b.txt
c
d
e
f
g
复制代码

 

2、取两个文件的并集

复制代码
root@ubuntu01:/home/test# ls
a.txt  b.txt
root@ubuntu01:/home/test# cat a.txt
a
b
c
d
e
root@ubuntu01:/home/test# cat b.txt
c
d
e
f
g
root@ubuntu01:/home/test# cat a.txt b.txt | sort -u   ## 取两个文件的并集
a
b
c
d
e
f
g
root@ubuntu01:/home/test# cat a.txt b.txt | sort | uniq   ## 取两个文件的并集
a
b
c
d
e
f
g
复制代码

 

3、取两个文件的交集

复制代码
root@ubuntu01:/home/test# ls
a.txt  b.txt
root@ubuntu01:/home/test# cat a.txt
a
b
c
d
e
root@ubuntu01:/home/test# cat b.txt
c
d
e
f
g
root@ubuntu01:/home/test# cat a.txt b.txt | sort | uniq -d   ## 取两个文件的交集
c
d
e
root@ubuntu01:/home/test# cat a.txt b.txt | sort | uniq -D   ## 取两个文件的交集
c
c
d
d
e
e
复制代码

 

4、取两者特有项的合集

复制代码
root@ubuntu01:/home/test# ls
a.txt  b.txt
root@ubuntu01:/home/test# cat a.txt
a
b
c
d
e
root@ubuntu01:/home/test# cat b.txt
c
d
e
f
g
root@ubuntu01:/home/test# cat a.txt b.txt | sort | uniq -u   ## 取两个文件特有项的合集
a
b
f
g
复制代码

 

5、取a.txt中的特有项

复制代码
root@ubuntu01:/home/test# ls
a.txt  b.txt
root@ubuntu01:/home/test# cat a.txt
a
b
c
d
e
root@ubuntu01:/home/test# cat b.txt
c
d
e
f
g
root@ubuntu01:/home/test# cat a.txt b.txt b.txt | sort | uniq -u   ## 取a.txt中的特有项
a
b
复制代码

 

6、取b.txt中的特有项

复制代码
root@ubuntu01:/home/test# ls
a.txt  b.txt
root@ubuntu01:/home/test# cat a.txt
a
b
c
d
e
root@ubuntu01:/home/test# cat b.txt
c
d
e
f
g
root@ubuntu01:/home/test# cat a.txt a.txt b.txt | sort | uniq -u      ## 取b.txt中的特有项
f
g
复制代码

 

posted @   小鲨鱼2018  阅读(385)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2021-03-26 6-11
点击右上角即可分享
微信分享提示