Bei einer Datei wie dieser:
1,768,12,46576457,7898
1,123,435,134,146
2,345,6756856,12312,1311
5,234,567465,12341,1341
1,3245,4356345,2442,13
9,423,2342,121,463
9,989,342,121,1212
Ich möchte alle Zeilen (im Bash-Terminal) so auflisten, dass der Wert in Spalte 1 mindestens zweimal erscheint (in Spalte 1). Das Ergebnis sollte sein
1,768,12,46576457,7898
1,123,435,134,146
1,3245,4356345,2442,13
9,423,2342,121,463
9,989,342,121,1212
quelle
Ein weiterer
awk
Ansatz zum Entfernen eindeutiger Zeilen basierend auf Spalte 1 (oder zum Zurückgeben doppelter Zeilen basierend auf Spalte 1)quelle
Solange die Felder durch Komma getrennt sind und Sie nur in Spalte 1 und Spalte 1 nach Duplikaten suchen, sollte dies funktionieren.
quelle
grep -f <(cut -d, -f1 file | sort | uniq -c | awk '$1>1 {print "^"$2","}') file
Eine andere Variante (wo
test.txt
ist Ihre Eingabedatei):quelle
Verwenden von Python 3:
Verwendungszweck:
Beispiel:
quelle