Você pode tentar seguir awk
:
awk 'BEGIN { FS = OFS = ","; } NR == 1 { print $1, $2; next; } { for (x = 3; x <= NF; x++) $2 += $x; print $1, $2 } ' file
Eu tenho um problema que tenho tentado descobrir:
Temos um arquivo CSV, que contém o estoque em vários locais.
O csv se parece com isso:
stock_no,primary,secondary,tertiary,cstock,direct
ABU0029843,1,,,5,
ABU0029934,60,,,5,
ABU0030034,,30,,5,
Eu gostaria que o resultado final fosse algo como isto (essencialmente resumindo e removendo as colunas vazias.)
stock_no,primary
ABU0029843,6
ABU0029934,65
ABU0030034,35
Eu tentei vários métodos com o awk, mas pareço estar retornando valores de 0
No entanto, eu não estou muito familiarizado com o awk, então estou certo de que estou fazendo algo errado. Qualquer ajuda seria apreciada.
Tags command-line awk csv shell gawk