gpt4 book ai didi

AWK 关联数组、映射或 HashMap

转载 作者:行者123 更新时间:2023-12-04 00:44:12 24 4
gpt4 key购买 nike

假设我有两个文件:

文件 1 - map .txt

1, 178246
2, 289789
3, 384275
4, 869282

file2 - relation.txt

178246, 289789
384275, 178246
384275, 869282

预期结果是:

1, 2
3, 1
3, 4

但我使用以下代码得到的结果是:

awk 'FNR==NR{map[$2]=$1} {$1=map[$1];$2=map[$2];print $0}' map.txt relation.txt

2,
1,
4,

当我像这样交换 map.txt 中的列时感到困惑:

178246, 1
289789, 2
384275, 3
869282, 4

relation.txt 没有改变

结果变成了:

awk 'FNR==NR{map[$1]=$2} {$1=map[$1];$2=map[$2];print $0}' map.txt relation.txt

1,
3,
3,

{$1=map[$1];$2=map[$2];print $0}附近好像有问题

最佳答案

awk  -F"[, ]" 'NR==FNR {m[$3]=$1;next};{print m[$1]",",m[$3]}' map.txt relations.txt

关于AWK 关联数组、映射或 HashMap ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21105473/

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