bash - awk 根据列值连接

标签 bash awk concatenation

我正在尝试根据第 1 列中的共享值连接第 2 列中的字符串。 我的文件是这样的:

2,John Doe
2,Roger Sterling
2,Blake Chaser
3,Rocky Horror
3,Jason Biggs
3,Bill Shakespeare

我需要这个:

2,John Doe, Roger Sterling, Blake Chaser
3,Rocky Horror, Jason Biggs, Bill Shakespeare

我尝试了很多 awk 命令,但无法得到它。感谢任何帮助

最佳答案

awk -F "," '{arr[$1] = arr[$1] FS $2} END {for (i in arr) print i arr[i]}' file

关于bash - awk 根据列值连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44397568/

相关文章:

c - strcat() 在尝试创建以空格分隔的字符串时删除字符串。 (C 编程)

python - 如何使用 numpy 将数组拆分为不同维度的子数组?

bash - 第一次使用 getopts 运行脚本有效,但第二次运行它时不起作用

bash - 如何将文件拆分为更小的文件(每行一个文件)[拆分不起作用]

linux - grep 或 awk 或 sed 连接或合并两个文件 linux

bash - 在没有 "next"语句的情况下在 awk 中处理多个文件

仅当用户具有权限时才运行 docker 命令(Bash if 或语句)

bash - awk 以秒为单位的日期范围

linux - Bash awk 脚本 : document splitter issue

c - 将 float 舍入并乘以它的字符(c)* 更新