gpt4 book ai didi

awk - 匹配两个文件中的行和字段

转载 作者:行者123 更新时间:2023-12-01 21:10:33 27 4
gpt4 key购买 nike

我想将一个文件中的记录编号与另一个文件中的相同字段编号进行匹配:

文件1:

1
3
5
4
3
1
5

文件2:

A B C D E F G
H I J J K L M
N O P Q R S T

我想使用第一个文件中5对应的记录号来获取第二个文件中对应的字段。期望的输出:

C G
J M
P T

到目前为止,我已经完成了:

awk '{ if ($1=="5") print NR }' file1 > temp
for i in $(cat temp); do
awk '{ print $"'${i}'" }' file2
done

但是得到输出:

C
J
P
G
M
T

我希望采用上面所需输出的格式,但无法使其工作。也许使用prinfawk for循环可能有效,但我没有成功。

谢谢大家。

最佳答案

awk 'NR==FNR{if($1==5)a[NR];next}{for(i in a){printf $i" "}print ""}' a b
C G
J M
P T

关于awk - 匹配两个文件中的行和字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33209324/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com