我有两个看起来像这样的文件:
plot(age, xlab="Age", ylab="Number of observations")
我想要做的是从文件1中提取那些行,其中第一列与文件2中的第一列相同。因此,基于此示例,输出应为:
file 1:
HO840F3000336240 HOUSAM129901651 HOUSAF132871174 F 20060607 Yes
HO840F3000336251 HOUSAM129800008 HOUSAF135774690 F 20060718 Yes
HO840F3000336254 HOUSAM129901651 HOUSAF135357862 F 20060724 Yes
HO840F3000487279 HOUSAM131520543 HOUSAF135761935 F 20061226 Yes
HOUSAM55967108 HOUSAM53557280 HOUSAF53557285 M 20091129 Yes
HOUSAF55969445 HOUSAM55967108 HOUSAF53579684 F 20120103 Yes
file 2:
HO840F3000336251
HO840F3000487279
HOUSAF135761935
HOUSAM55967108
任何建议?
答案 0 :(得分:2)
更新:
此命令将创建具有所需输出的file3。经过测试和工作:
cat file1 | grep -f file2 > file3
输出:
HO840F3000336251 HOUSAM129800008 HOUSAF135774690 F 20060718 Yes
HO840F3000487279 HOUSAM131520543 HOUSAF135761935 F 20061226 Yes
它使用grep中的-f
开关,该开关采用每行一个模式的文件名。根据{{1}}:
man grep
答案 1 :(得分:0)
答案是使用join命令而不是grep。
根据第一列对两个文件进行排序后:
join File1 file2 > file3