Para um melhor suporte a CSV, use perl
e Text::CSV
#!/usr/bin/perl
use strict;
use warnings;
use Text::CSV;
my $file = $ARGV[0];
open my $fh, "<", $file or die "$file: $!";
my $csv = Text::CSV->new ({
binary => 1,
auto_diag => 1,
# uncomment the line below to avoid leading and trailing whitespaces
allow_whitespace => 1,
sep_char => ','
});
while (my $row = $csv->getline ($fh)) {
print ".$row->[6]($row->[8]), ";
print ".$row->[11]($row->[13]), ";
print ".$row->[16]($row->[18])\n";
}
close $fh;
Salve o arquivo como ./getit
, chmod +x getit
e execute com ./getit input.csv
Exemplo de saída
.HRESETn(~dcc_ares), .HCLK(dcc_clk), .HADDR(i_dcc_qhs_haddr)
Se você receber uma mensagem de erro como esta:
"use Text::CSV;" - Can't locate Text/CSV.pm
Instale o módulo certo via:
sudo apt-get install libtext-csv-perl
ou
perl -MCPAN -e'install Text::CSV'