【发布时间】:2012-06-15 13:29:18
【问题描述】:
我正在尝试使用 3 个字段(file1 中的字段 1,2,5 和 file2 中的 1,2,5)比较两个文件(用逗号和空格分隔),如果这两个文件匹配我想要 file2 的整个记录使用 awk 与 file1 的最后一个字段连接。例如 文件1:
1, 4, abebe, kebede, 25, 101, 42
1, 4, abebe, debebe, 42, 201, 47
1, 4, abebech, kebede, 17, 33, 57
文件2:
1, 4, abebe, kebede, 25, 101, 42
1, 4, Tesse, debo, 25, 101, 42
1, 4, derartu, tulu, 25, 101, 42
输出:
42, 1, 4, abebe, kebede, 25, 101, 42
47, 1, 4, Tesse, debo, 25, 101, 42
57, 1, 4, derartu, tulu, 25, 101, 42
我是 linux 新手.... 任何帮助都可以得到帮助
【问题讨论】:
-
文件为 file1: 1, 4, abebe, kebede, 25, 101, 42 (rec1) 1, 4, abebe, debebe, 42, 201, 47(rec2) 1, 4, abech , kebede, 17, 33, 42 (rec3) file2: 1, 4, abebe, kebede, 25, 101, 42 (rec1) 1, 4, Tesse, debo, 25, 101, 42(rec2) 1, 4, derartu , 图卢, 25, 101, 42(rec3)
-
文件 1 中记录 1 的字段 1、2 和 5 匹配文件 2 中的所有记录。
-
您的输出与问题描述不符。文件 2 中的所有记录都与文件 1 中第一条记录的字段 1、4、25 匹配,因此输出的所有行都应以 42 开头。您真的关心字段 4 而不是字段 5?