如何使用perl在csv文件末尾添加额外的列?我无法使用Text::CSV
,因为我使用的是5.8.8版,并且此处未安装该软件包。我无法升级到更新的perl版本。我首先将几个较小的CSV文件合并为一个,然后我需要在该最终文件中添加一个额外的列。我已将最终文件的句柄声明为SUB。
这是我的代码段:
my $file = "/tmp/Sub_test_".$row.".csv";
# the $row is in a loop..so it comes as 1,2 etc.
open my $fh, "<", $file;
<$fh> unless $file eq "/tmp/Sub_test_1.csv";
print SUB while <$fh>;
我需要添加标题为“count”的额外列,值应为$row
。
答案 0 :(得分:1)
它只是您要添加的行数吗?
这会将,计数添加到第一行,将,$。(这是行号)添加到其余行。
然后尝试
$ perl -e 'while (<>){chomp;if ($. ==1){print "$_,count\n"} else {print "$_,".($.-1)."\n"}}' your.csv
tmp.csv
one,two,three
4,5,6
2,3,4
6,7,1
$ perl -e 'while (<>){chomp;if ($. ==1){print "$_,count\n"} else {print "$_,".($.-1)."\n"}}' tmp.csv
one,two,three,count
4,5,6,1
2,3,4,2
6,7,1,3