txt
次のファイルがあります。
Large 0
Large 0
Large 1
Large 2
Medium 0
Medium 1
Medium 1
small 1
small 3
さまざまな大型、中型、小型のラインをすべて組み合わせて、次のような結果を出力したいと思います。
Large 3
Medium 2
Small 4
別の同様の問題がありますが、他のファイルは単なる単語です。たとえば、次のようになります。
MVCC Cybersecurity
MVCC Cybersecurity
MVCC Cybersecurity
度数の合計、つまりサイバーセキュリティの総数を出力したいです。
MVCC 3
ベストアンサー1
perl -lane '@F == 2 and $h{$F[0]}+=$F[1]}{print "$_ $h{$_}" for keys %h' yourfile
行に正確に2つのフィールドがある場合は、キーの2番目のフィールドが最初のキーであるハッシュを更新してください。最後に、キーとその値を印刷してください。
ハッシュ%hのデータ構造は次のとおりです。
%h = ( ... LARGE => running_sum, ... );
アッ
awk '
NF == 2 { seen[$1] += $2 }
END{
for(i in seen)
print i, seen[i]
}
' yourfile