Ich habe die folgende Datei.txt
Plummet
Cherist the day
--
The Transatlatins <-----------duplicate
Mysteriosa <-----------duplicate
--
Angel City;Lara McAllen
Love me right
--
The Transatlatins
Mysteriosa
Wie kann ich Duplikate löschen, ohne die Reihenfolge zu ändern? und mit den Zeilenleerzeichen habe ich es probiert, sort
aber ich ändere die Reihenfolge und uniq
bekomme die Duplikate nicht.
erwartetes Ergebnis:
Plummet
Cherist the day
--
Angel City;Lara McAllen
Love me right
--
The Transatlatins
Mysteriosa
Antwort1
Angenommendass die Datei das Format haben soll
field1\n
field2\n
\n
field1\n
field2\n
\n
d. h. die letzte Zeile in der Beispieldatei sollte lauten
Mysteriosa Mysteriosa
dann sollte dies funktionieren, vorausgesetzt, es gibt eine abschließende neue Zeile \n
nach dem letzten Eintrag
sed '$!N;$!N;s/\n/:/g' file | nl -s"|" | sort -t '|' -k2 | awk -F"|" '!_[$2]++' | sort -n | sed -e 's/.*|//' -e 's/:/\n/g'
Antwort2
Befehl:
awk '{if (!seen[$1,$2]++)print $0}' filename