web-dev-qa-db-ja.com

CSVで2つの列を一緒に追加し、新しいCSVファイルに出力します

私は私が理解しようとしてきた問題を抱えています:

複数の場所の在庫を含む在庫ファイルCSVがあります。

Csvは次のようになります。

stock_no,primary,secondary,tertiary,cstock,direct
ABU0029843,1,,,5,
ABU0029934,60,,,5,
ABU0030034,,30,,5,

最終結果を次のようにしたいと思います(基本的に、空の列を合計して削除します)。

stock_no,primary
ABU0029843,6
ABU0029934,65
ABU0030034,35

Awkでさまざまなメソッドを試しましたが、0の値を返しているようです

しかし、私はawkにあまり詳しくないので、何か間違ったことをしていると確信しています。どんな助けでもいただければ幸いです。

2
Jon Bunce

次のawkを試すことができます。

awk 'BEGIN { FS = OFS = ","; } NR == 1 { print $1, $2; next; } { for (x = 3; x <= NF; x++) $2 += $x;  print $1, $2 } ' file
1
taliezin