在linux系统中,两个txt文件中,我要在第一个文件中提取出含有第二个文件中的内容的行。哪位能解决一下吗

如第一个文件中含有GD1、GD2、GD3、GD5。第2个文件中含有GD1(23837)(12083)、GD2(19827)(29833)、GD3(29832)(92334... 如第一个文件中含有GD1、GD2、GD3、GD5。第2个文件中含有GD1 (23837) (12083)、GD2 (19827) (29833)、GD3 (29832) (92334) 、GD4 (39873) (87344) 、GD5 (28344) (92834)。我要提取出含有GD1、2、3、5行,不要GD4的行,应该怎么写命令?有很多,手工完全不行。
比如文件一如下:
100 1 1 2 4

169 1 1 1 6

171 1 1 1 3

208 1 1 2 3

366 0 1 2 3

382 0 1 1 4

460 1 1 1 5
文件二:

169

366

460
我需要在第1个文件中提取出含第二个文件内容的行,需要的如下:
169 1 1 1 6
366 0 1 2 3
460 1 1 1 5
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
cndonger
2014-08-29 · TA获得超过801个赞
知道小有建树答主
回答量:1425
采纳率:0%
帮助的人:929万
展开全部
把文件贴一小部分完整的吧。到底GD1、GD2、GD3、GD5是在一行还是一列呢?
追问
一列。已补充,你再看一下。
追答
gawk 'ARGIND==1{a[$1]=$1} ARGIND==2{if(a[$1]!="") print $0}' 文件2 文件1
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式