【发布时间】:2015-02-07 04:29:35
【问题描述】:
我已经阅读了所有相关的问题,但仍然很困惑......
我有两个文件标签分开。
file1(为便于阅读添加了中断):
a 15 bac
g 10 bac
h11 bac
r 33 arq
t 12 euk
file2(为便于阅读添加了中断):
0 15 h 3 5 2 gf a a g e g s s g g
p 33 g 4 5 2 hg 3 1 3 f 5 h 5 h 6
g 4 r 8 j 9 jk 9 j 9 9 h t 9 k 0
所需的输出(为可读性添加了中断):
bac 15 h 3 5 2 gf a a g e g s s g g
arq 33 g 4 5 2 hg 3 1 3 f 5 h 5 h 6
ND g 4 r 8 j 9 jk 9 j 9 9 h t 9 k 0
就是这样。我需要打印完整的 file2 但在第一列中,只有当 file2 的 $2 时,我才需要用 file1 的第三列替换与 file1 的 $2 相同...
file1 大于 file2,但仍可能发生 $2 file2 不存在于 file1 中,在这种情况下打印在第一列 ND。
我确定它一定很简单,但我在管理两个文件时遇到了awk 的问题。请,如果有人可以帮助我...
【问题讨论】:
-
file2的$2为10,arq的$2为10时,第二行怎么变成33?
-
对不起。我的错。 File2 在第二行应该有 33
-
所以最终输出是否应该跳过 file2 的第一列?