Katze Duplikat1.txt | sortieren -k 2 | uniq -f 1
Wenn Sie sich mit dem Flag „sort“ wundern, müssen Sie „sort“ anweisen, nach der zweiten Spalte zu sortieren.
Alle Zeilen anzeigen, aber Duplikate trennen
Nach allen oben genannten Beispielen behält „uniq“ nur das erste Vorkommen des duplizierten Inhalts und entfernt den Rest. Wie wäre es, die doppelten Inhalte vollständig zu entfernen?? Ja, mit dem Flag „-u“ können wir „uniq“ erzwingen, um nur die sich nicht wiederholenden Zeilen beizubehalten.
Katze duplizieren.txt | Sortieren
Katze duplizieren.txt | sortieren | uniq -u
Hmm, zu viele Duplikate sind jetzt weg…
Anfangszeichen überspringen
Wir haben besprochen, wie man „uniq“ anweist, seine Arbeit für andere Felder zu erledigen, richtig? Es ist Zeit, die Prüfung nach einer Reihe von Anfangszeichen zu starten. Zu diesem Zweck weist das Flag „-s“ zusammen mit der Anzahl der Zeichen „uniq“ an, die Aufgabe zu erledigen.
Katze Duplikat1.txt | sortieren -k 2 | uniq -s 2
Es ähnelt dem Beispiel, in dem „uniq“ nur im zweiten Feld seine Aufgabe erfüllen sollte. Sehen wir uns ein weiteres Beispiel mit diesem Trick an.
Katze duplizieren.txt | sortieren | uniq -s 5
Überprüfen Sie NUR die Anfangszeichen
So wie wir „uniq“ angewiesen haben, die ersten paar Zeichen zu überspringen, ist es auch möglich, „uniq“ anzuweisen, den Check nur auf die ersten paar Zeichen zu beschränken. Dafür gibt es ein eigenes „-w“-Flag.
Katze duplizieren.txt | sortieren | uniq -w 5
Dieser Befehl weist „uniq“ an, innerhalb der ersten 5 Zeichen eine Eindeutigkeitsprüfung durchzuführen.
Sehen wir uns ein weiteres Beispiel für diesen Befehl an.
Katze Duplikat1.txt | sortieren | uniq -w 5
Es löscht alle anderen Instanzen von "duplikaten" Einträgen, weil es die Eindeutigkeitsprüfung des "dupli"-Teils durchgeführt hat.
Groß-/Kleinschreibung
Bei der Prüfung auf Eindeutigkeit prüft „uniq“ auch die Groß-/Kleinschreibung der Zeichen. In einigen Situationen spielt die Groß-/Kleinschreibung keine Rolle, daher können wir das Flag „-i“ verwenden, um die Groß-/Kleinschreibung von „uniq“ unabhängig zu machen.
Hier präsentiere ich euch die Demodatei.
Einige wirklich clevere Vervielfältigungen mit einer Mischung aus Groß- und Kleinbuchstaben, richtig? Es ist an der Zeit, die Stärke von „uniq“ zu nutzen, um das Chaos zu beseitigen!
Katze Duplikat1.txt | sortieren | uniq -i
Wunsch erfüllt!
NULL-terminierte Ausgabe
Das Standardverhalten von „uniq“ besteht darin, die Ausgabe mit einem Zeilenumbruch zu beenden. Die Ausgabe kann aber auch mit NULL abgeschlossen werden. Das ist ziemlich nützlich, wenn Sie es in Skripten verwenden möchten. Hier macht das Flag „-z“ den Job.
Katze duplizieren.txt | sortieren | uniq -z
Kombinieren mehrerer Flaggen
Wir haben eine Reihe von Flags von "uniq" gelernt, richtig? Wie wäre es, sie miteinander zu kombinieren?
Ich kombiniere zum Beispiel die Groß-/Kleinschreibung und die Anzahl der Wiederholungen zusammen.
Wenn Sie jemals planen, mehrere Flaggen miteinander zu kombinieren, stellen Sie zunächst sicher, dass sie richtig zusammenarbeiten. Manchmal funktionieren die Dinge einfach nicht so, wie sie sollten.
Abschließende Gedanken
„uniq“ ist ein ziemlich einzigartiges Tool, das Linux bietet. Mit so vielen leistungsstarken Funktionen kann es in vielerlei Hinsicht nützlich sein. Die Liste aller Flaggen und deren Erklärungen finden Sie auf den man- und info-Seiten von „uniq“.
Mann einzigartig
info uniq
Genießen!