首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >搜索文件2中的文件1和输出文件2列中的内容

搜索文件2中的文件1和输出文件2列中的内容
EN

Unix & Linux用户
提问于 2019-07-28 01:42:15
回答 2查看 323关注 0票数 0

在file1中查找file2中的内容,输出应该包含file2中的内容,但包含第二列。

File1:

代码语言:javascript
复制
DataCreditoEAR.ear
PostSale.ear

File2:

代码语言:javascript
复制
DataCreditoEAR.ear      /usr/DataCreditoEAR
DatacreditTableAdministrator.ear        /usr/DatacreditTableAdministrator
PostSale.ear    /usr/PostSale

输出:

代码语言:javascript
复制
/usr/DataCreditoEAR
/usr/PostSale
EN

回答 2

Unix & Linux用户

发布于 2019-07-28 01:57:18

最简单/最简单的方法是使用grep进行模式匹配,然后使用awk提取第二个字段。

代码语言:javascript
复制
grep -f File1 File2 | awk '{print $2}'

如果File1包含固定字符串而不是regexp模式,请使用grep的-F又名--fixed-strings选项:

代码语言:javascript
复制
grep -F -f File1 File2 | awk '{print $2}'
票数 0
EN

Unix & Linux用户

发布于 2019-07-28 02:02:38

如果File2中的字段(列)由制表符分隔,

代码语言:javascript
复制
grep -f File1 File2 | cut -f2

否则,

代码语言:javascript
复制
grep -f File1 File2 | awk '{print $2}'

或者完全用awk (与空格的味道无关):

代码语言:javascript
复制
awk '!flag { a[$1]++ } flag { if (a[$1]) print $2 }' File1 flag=2 File2
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/532534

复制
相关文章

相似问题

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