(report or filter out repeated lines in a file)
uniq sucht in einer Datei nach aufeinanderfolgenden gleichen Zeilen, schreibt die Datei auf die Standard-Ausgabe und lässt dabei die Wiederholungen weg. Nur bei aufeinanderfolgenden Zeilen können Übereinstimmungen festgestellt werden, d.h die Eingabedatei muss sortiert sein.
Syntax
Format 1: | uniq[ -c| -d| -u][ -n][ +m][ eingabe_datei[ ausgabe_datei]] |
Format 2: | uniq[ -c| -d| -u][ -f feld][ -s zeichen][ eingabe_datei[ ausgabe_datei]] |
Die beiden Formate werden gemeinsam beschrieben, da die Option -n in Format 1 äquivalent zu der Option -f feld in Format 2 und die Option +m in Format 1 äquivalent zu der Option -s zeichen in Format 2 ist. Keine Option angegeben eingabe_datei wird ausgegeben und Wiederholungen werden weggelassen.
Alle Zeilen werden ohne Wiederholungen mit einer Dezimalzahl am Zeilenanfang ausgegeben. Die Zahl gibt an, wie oft die entsprechende Zeile in eingabe_datei nacheinander vorkommt. uniq ignoriert zusätzlich gesetzte Optionen -u oder -d.
Nur die in eingabe_datei mehrfach vorkommenden Zeilen werden jeweils einmal ausgegeben.
Nur die Zeilen werden ausgegeben, die in eingabe_datei nicht wiederholt vorkommen.
Die ersten n Felder ab Zeilenanfang, zusammen mit vor einem Feld stehenden Tabulator- oder Leerzeichen, werden beim Vergleichen der Zeilen nicht berücksichtigt. Ein Feld ist eine nichtleere Zeichenfolge, die durch ein Tabulator- oder Leerzeichen vom Nachbarfeld getrennt ist. -n nicht angegeben: Die Option -n ist äquivalent zu der Option -f
Die ersten m Zeichen ab Zeilenanfang werden beim Vergleichen der Zeilen nicht berücksichtigt. +m nicht angegeben: Die Option +m ist äquivalent zu der Option -s
Name der Datei, die untersucht werden soll. eingabe_datei nicht angegeben:
Name der Datei, in welche die Ausgabe geschrieben werden soll. ausgabe_datei nicht angegeben: |
Internationale Umgebung
Die folgenden Umgebungsvariablen beeinflussen die Ausführung des Kommandos uniq: LANG Gibt einen Standardwert für die Variablen für die internationale Umgebung an, die nicht gesetzt oder Null sind. Ist LANG nicht gesetzt oder Null, wird der entsprechende Standardwert der internationalen Umgebung verwendet. Enthält eine der Internationalisierungsvariablen eine ungültige Einstellung, verhält sich das Kommando so, als sei keine der Variablen definiert worden. LC_ALL Ist diese Variable auf einen Wert gesetzt, d. h. ist sie nicht leer, überschreibt dieser Wert die Werte aller übrigen Internationalisierungsvariablen. LC_CTYPE Legt die internationale Umgebung für die Interpretation der Byte-Folgen eines Datentexts als Zeichen fest (z.B. Singlebytezeichen im Unterschied zu Mehrbytezeichen in Argumenten und Eingabedateien) sowie die Einteilung der Zeichen in Groß- und Kleinbuchstaben und deren Übereinstimmung. LC_MESSAGES Legt die internationale Umgebung für Format und Inhalt der Diagnosemeldungen fest, die in die Standardfehlerausgabe geschrieben werden. NLSPATH Legt den Pfad der Meldungsdateien für LC_MESSAGES fest. |
Beispiel 1
Sie möchten eine Datei nach gleichen Zeilen durchsuchen, unabhängig davon, wo diese in der Datei stehen. Für jede dieser Zeilen ist auszugeben, wie oft sie vorkommt.
|
Beispiel 2
Sie möchten die 10 häufigsten Wörter der Datei text ausgeben lassen.
Erläuterung:
|
Siehe auch
comm, sort |