首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在两个文本文件中找到相似的行?

在两个文本文件中找到相似的行?
EN

Stack Overflow用户
提问于 2016-06-22 04:30:46
回答 3查看 436关注 0票数 1

我有两个排序好的文本文件,里面填满了python模块和版本号。格式如下:

代码语言:javascript
复制
Cython==0.21
DataShape==0.3.0
Flask==0.10.1
Jinja2==2.7.3
MarkupSafe==0.23
PIL==1.1.7

我想比较一下,看看他们有什么共同点。

我知道这会带给我他们的共同之处

代码语言:javascript
复制
comm -12 file1 file2

但我也想知道它们有什么共同之处,即使版本号不同。有什么简单的方法可以做到这一点吗?

EN

回答 3

Stack Overflow用户

发布于 2016-06-23 00:05:59

所以我找不到特定的命令,所以我只是写了一个快速的python脚本来解析文件,只给我"=“之前的部分,然后使用comm来比较这些新文件。

票数 1
EN

Stack Overflow用户

发布于 2016-06-23 00:11:03

因为您显然是在Linux中,所以您可以对它们进行sed、sort和uniq (这取决于bash进程的替代,如果需要,您可以写出间歇文件):

代码语言:javascript
复制
diff <(awk -F= '{ print $1 }' firstfile.txt | sort | uniq) <(awk -F= '{ print $1 }' secondfile.txt | sort | uniq)
票数 0
EN

Stack Overflow用户

发布于 2016-06-23 00:17:06

如果不必是一行命令,则可以使用sed

代码语言:javascript
复制
sed 's/=.*//g' file1 > file1.stripped
sed 's/=.*//g' file2 > file2.stripped
comm -12 file1 file2
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37954026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档