フィールドを他のフィールドに関連付けてフィールドの合計を見つけるには、awk
次の例を検討してください。
文書:
boo,foo,VO,1000
boo,foo,VO,1000
bar,var,DT,1000
var,bar,VO,2000
$3
この例ではpersの数を収集する必要があるため、$4
結果は次のようになります。
VO,1000 2
DT,1000 1
VO,2000 1
最初と2番目のフィールドは無視されます。
答え1
並べ替えても大丈夫なら、次はうまくいきます。
awk -F, '{print $3","$4}' <file name> | uniq -c
uniq -c
繰り返し回数の計算
入力の場合、出力は次のようになります。
2 VO,1000 1 DT,1000 1 VO,2000
必要に応じて、2番目のawkを使用して追加の編集を実行できます。
答え2
awkでこれを行うには:
awk '
BEGIN {FS=SUBSEP=","}
{count[$3,$4]++}
END {for (key in count) print key, count[key]}
' file
DT,1000 1
VO,1000 2
VO,2000 1