linux - 读取csv并写入excel格式

标签 linux bash shell xls

我生成以下格式的 csv 文件:

Group_Name1,member1,member2,member3,...,memberN
Group_Name2,member1,member2,member3,...,memberM
Group_Name3,member1,member2,member3,...,memberR
Group_Name4,member1,member2,member3,...,memberT
....
Group_NameN,memberN,memberN,memberN,...,memberZ

我尝试使用awk,但无法按要求编写。

现在我需要将此文件转换为以下格式:

Group_Name1,Group_Name2,Group_Name3,Group_Name4,...,Group_NameN
member1,member1,member1,member1,...,memberN
member2,member2,member2,member2,...,memberM
member3,member3,member3,member3,...,memberR
member4,member4,member4,member4,...,memberT
...
memberN,memberN,memberN,memberN,...,memberZ

最佳答案

试试这个:

   awk -F, '{for (i=1; i<=NF; i++) a[i,NR]=$i
            max=(max<NF?NF:max)}
            END {for (i=1; i<=max; i++)
                  {for (j=1; j<=NR; j++) 
                      printf "%s%s", a[i,j], (j==NR?RS:FS)
                  }
            }' infile.csv

关于linux - 读取csv并写入excel格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57869526/

相关文章:

linux - 需要在 bash 中的两个给定时间之间生成时间值

linux - Bash:如何遍历目录结构并执行命令?

linux - 如何在没有 ISP Manager 的情况下更改 A 记录

Bash PDF 合并丢失文件

linux - 使用 Intel PEBS 的 DTLB 未命中地址跟踪

bash - 如何将两个文件的行相加? (每列 1 列数据)在 bash 中

linux - Bash 脚本 : $x=$x+2 is not getting recognised

linux - 通过命令行将标志和其他参数一起传递给 ksh 脚本

java - 从 java 代码运行脚本 shell

linux - 如何制作脚本来重命名文件