文本到 CSV 中的列

文本到 CSV 中的列

我的 CSV 文件中的数据在单列中如下所示:

输入:

Company;C Desc;Region;R Desc;
H;Hindustan;13;Maharashtra;
I;Unilever;28;Dadra;

我想将数据文本更改为带分隔符“;”的列如下:

输出:

Company   C Desc    Region    R Desc
H         Hindustan 13        Maharashtra
I         Unilever  28        Dadra

如何在shell脚本中编写这个场景?

输入文件输出文件

答案1

如果您有该column实用程序(大多数免费的 Unices 都有):

$ column -t -s ';' infile.csv >outfile.txt

$ cat outfile.txt
Column A
Company code  Company Desc  Region Code  Region Desc
H             Hindustan     13           Maharashtra
I             Unilever      28           Dadra

然后是插入“B 列”、“C 列”等的问题,但从问题中不清楚这些是否是输入/输出的一部分。

编辑: 问题澄清后:

;使用替换CSV 文件中的逗号tr,然后将文件重新导入 Excel。

$ tr ';' ',' <infile.csv >outfile.csv

;如果您指定为列分隔符,Excel 还应该能够导入原始数据。我不是 Excel 用户,所以我无能为力。

相关内容