我有两个文件包含两列,第二个文件的一些行匹配第一个文件的行,如果它们匹配匹配的行被打印。我无法使用数组,因为这些文件非常大。AWK:通过两列匹配来比较两个文件,不允许数组
我有一个轻微的想法,比较线条与getline。但我不明白...
你能帮助我吗?
第一个文件:
ut Adélaïde Male Latvian Chippewa proin Åke Male Zulu Eskimo scelerisque Åke Female Maltese Central American sit Åke Male Northern Sotho Yaqui sagittis Alizée Male Northern Sotho Paiute dictumst Almérinda Female Romanian Honduran sed Almérinda Male Hungarian Navajo volutpat Almérinda Male Georgian Honduran
第二个文件:
Adélaïde Male Åke Female Alizée Male Almérinda Male
输出:
ut Adélaïde Male Latvian Chippewa sit Åke Female Northern Sotho Yaqui sagittis Alizée Male Northern Sotho Paiute sed Almérinda Male Hungarian Navajo volutpat Almérinda Male Georgian Honduran
我的工作
BEGIN {
FS="\t";
n=getline V0 <ll;
}
{
wrd=$2"\t"$3
while (wrd>V0)
{
if (n>0)
{
n=getline V0 < ll;
}
else
{
n=getline;
while (n>0)
{
n=getline;
}
exit;
}
}
if (wrd==V0)
{
print $0;next;
}
else
{
next;
}
}
谢谢,现在我添加你要求的! – Polucho
谢谢,何塞里卡多。 – Polucho
@Criatos在第二个文件中,是'ÅkeMale'而不是'ÅkeFemale'? –