gpt4 book ai didi

shell - 根据列之间的一致性粘贴两个文件

转载 作者:行者123 更新时间:2023-12-01 08:26:27 25 4
gpt4 key购买 nike

我需要一些帮助:

我有 file1:

ID
100
102
103
104
108
109
112
.
.
.

和文件2:

ID    []    p1    p2
100 2.5 3.0 2.0
101 2.0 4.0 3.0
102 2.6 4.0 2.5
103 2.3 2.0 NA
104 2.3 2.0 2.0
105 3.5 2.8 2.0
106 1.7 NA 3.2
107 5.0 4.0 4.0
108 3.2 2.0 4.0
109 2.9 1.0 1.5
110 5.0 NA NA
111 2.9 4.0 4.0
112 3.1 2.5 2.0
.
.
.

我想将这两个文件粘贴到 file3 中,如下所示:

ID    []    p1    p2
100 2.5 3.0 2.0
102 2.6 4.0 2.5
103 2.3 2.0 NA
104 2.3 2.0 2.0
108 3.2 2.0 4.0
109 2.9 1.0 1.5
112 3.1 2.5 2.0
.
.
.

基本上,将字段 2、3、4 中的数据从文件 2 粘贴到文件 1,同时考虑文件 1 和文件 2 中字段 1 的一致性。

我已经用 NR == NFR 尝试了一些 awk 命令,但我只得到了包含 file1 内容的输出,然后是 file2 的内容...

有什么帮助吗?也欢迎带有剪切和粘贴功能的 Unix 命令

最佳答案

您确实可以为此使用 awk:

awk 'NR==FNR{a[$1]=1} NR>FNR && a[$1]' file1 file2

NR==FNR{a[$1]=1} a 数组,其中填充了 file1 的内容。

NR>FNR && a[$1] 如果数组包含 ID(又名 $1),则打印 file2 的行。

关于shell - 根据列之间的一致性粘贴两个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38397331/

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