awk nach mehreren Spalten gruppieren und Maximalwert mit Nicht-Primärschlüssel ausgeben

Ich bin neu auf dieser Seite und versuche awk zu lernen. Ich versuche, den Maximalwert von Feld3 zu finden, nach Feld1 zu gruppieren und alle Felder mit Maximalwert zu drucken. Feld 2 enthält Zeit, dh für jedes Element1 gibt es 96 Werte für Feld2, Feld3 und Feld4

eingabedatei: (durch Komma getrennt)

item1,00:15,10,30
item2,00:45,20,45
item2,12:15,30,45
item1,00:30,20,56
item3,23:00,40,44
item1,12:45,50,55
item3,11:15,30,45

Gewünschte Ausgabe:

item1,12:45,50,55
item2,12:15,30,45
item3,11:15,30,45

was ich bisher versucht habe:

BEGIN{
FS=OFS=","}
{
if (a[$1]<$3){
   a[$1]=$3}
}
END{
for (i in a ){
print i,a[i]
}

aber dies druckt nur

item1,50
item2,30
item3,30

, aber ich muss das entsprechende Feld2 und Feld4 mit dem maximalen Wert drucken, wie in der gewünschten Ausgabe gezeigt. Bitte helfen Sie.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage