匹配模式并连接两个文件中的字段

时间:2015-01-30 13:53:26

标签: linux unix

我需要帮助匹配模式和连接两个文件中的字段。

例如:我在一个文件中包含以下内容:

   186.110.12.152 xxx
   186.110.16.123 yyy

以及另一个文件中的以下内容。

   186.110.12.152 www.google.com 
   186.110.16.123 www.facebook.com

现在我需要在输出的开头获取用户名。 如果我搜索xxx,我必须得到输出

  xxx 186.110.12.152 www.google.com

提前致谢!!!!

2 个答案:

答案 0 :(得分:1)

查找join命令。这是为了根据列的内容加入文件。

http://linux.die.net/man/1/join

答案 1 :(得分:1)

使用join命令

join firstfile secondfile > output.txt

有关详细信息,请查看此article

确切地说,根据输出格式,您需要使用-o选项跟踪此格式,

join -o 1.2 2.1 2.2 firstfile secondfile |tee output.txt

输出将是;

xxx 186.110.12.152 www.google.com 
yyy 186.110.16.123 www.facebook.com

这是我尝试过的,

enter image description here

上述命令的解释如下,

-o它用于格式化join命令的输出。

1.2它表示firstfile的第二列。

2.1它表示secondfile的第一列。

2.2它表示secondfile的第二列。

tee命令会将join命令的输出重定向到文件和标准输出(即:console)。

output.txt将记录join命令的输出。