Suchen und zählen doppelter Zeilen in Textdateien

()

In Textdateien nach doppelt oder mehrfachen Zeilen und Inhalt Suchen und zählen

Suchen und zählen doppelter Zeilen in Textdateien

Textdateien Filtern mit sort und uniq

Bei der Bearbeitung von Text oder Konfigurationsdateien in der Linux Shell, kann es oft die Anforderung geben, das identische Zeilen in den Textdateien nur einmal vorkommen dürfen. Damit das Suchen und zählen von Zeilen in Textdateien, insbesondere mit einer grösseren Anzahl an Zeilen nicht manuell erfolgen muss, hilft die Verwendung der Filter sort und uniq.

Linux sort und uniq

Dieser Befehl zählt doppelte Zeilen und sortiert die Ausgabe in der bash.

$ sort FILE | uniq --count

  Den Platzhalter FILE durch den wirklichen Dateinamen ersetzen.

Doppelt vorhandene Zeilen

Sollen nur doppelt vorhandene Zeilen ausgegeben werden.

$ sort FILE | uniq --count --repeated

Es wird nichts ausgegeben, wenn keine doppelten Zeilen in der Textdatei enthalten sind.

Fazit

Wie in diesem Beitrag gezeigt wird, können bei der Bearbeitung von Text oder Konfigurationsdateien in der Linux Shell, die Filter sort und uniq bei der Suche nach identischen Zeilen in den Textdateien nützlich sein. Damit das Suchen und zählen von Zeilen in Textdateien, insbesondere mit einer grösseren Anzahl an Zeilen nicht manuell erfolgen muss.

Das Programm sort und uniq

sort (/usr/bin/sort) ist ein Programm, mit dem Datenströme oder Dateien sortiert, zusammengeführt oder auf eine bereits vorliegende Sortierung überprüft werden können. Sortierungsschlüssel können alphabetisch oder numerisch sein und konfigurierbare Teile der Eingabe(-zeilen) in ebenfalls konfigurierbarer Reihenfolge umfassen.

Der Funktionsumfang wie auch die Funktionsweise von sort ist für UNIX-Systeme durch den POSIX-Standard geregelt. Dagegen weist das GNU-sort einige Abweichungen von diesem Standard auf. Die Single UNIX Specification listet das Utility sort als „mandatory“ (notwendigen Bestandteil) und spezifiziert sein erwartbares Verhalten.

uniq (/usr/bin/uniq) findet die eindeutigen Zeilen in einer bestimmten Eingabe. Als (stdin oder ein Dateinamen-Befehlszeilenargument) und meldet die duplizierten Zeilen entweder oder entfernt sie.

Dieser Befehl funktioniert nur mit sortierten Daten. Daher wird uniq häufig mit dem Sortierbefehl verwendet.

Hinweis: „uniq“ erkennt keine wiederholten Zeilen, es sei denn, sie liegen nebeneinander. Möglicherweise möchte man die Eingabe zuerst sortieren oder „sort -u“ ohne „uniq“ verwenden.

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung / 5. Anzahl Bewertungen:

Bisher keine Bewertungen! Sei der Erste, der diesen Beitrag bewertet.

Es tut uns leid, dass der Beitrag für dich nicht hilfreich war!

Lasse uns diesen Beitrag verbessern!

Wie können wir diesen Beitrag verbessern?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert