使用 AWK 根据第一列合并唯一行

Sud*_*ath -1 unix bash awk text-processing sed

我正在尝试编写一个 AWK 脚本来汇总大型文本文件中的数据。结果数据的顺序很重要,所以我不能使用排序。

我尝试过 FNR==NR 的不同变体,但没有任何运气

输入文件

Height 3.5
Weight 12.3
Age 23
: 
:
Height 4.5
Weight 15.5
Age 31
:
:
Run Code Online (Sandbox Code Playgroud)

预期输出

Height 3.5 4.5
Weight 12.3 15.5
Age 23 31
Run Code Online (Sandbox Code Playgroud)

Cyr*_*rus 5

使用 awk:

\n\n
awk \'{a[$1]=a[$1] FS $2} END{for(i in a) print i a[i]}\' file\n
Run Code Online (Sandbox Code Playgroud)\n\n

输出:

\n\n
\n体重 12.3 15.5\n身高 3.5 4.5\n: \n年龄 23 31\n
\n\n

源自:如何将共享唯一 ID 的行合并到逗号分隔的表中

\n\n
\n\n

请参阅:8 个强大的 Awk 内置变量 \xe2\x80\x93 FS、OFS、RS、ORS、NR、NF、FILENAME、FNR

\n