Linux Terminal: Zählen und Sortieren – wc, sort, uniq, nl

Nach der Arbeit mit grundlegenden Anzeige- und Überwachungswerkzeugen widmen wir uns nun einer weiteren wichtigen Aufgabe in der täglichen Terminalarbeit: Daten analysieren, zählen, sortieren und aufbereiten.

Linux stellt dafür mehrere leistungsstarke Werkzeuge bereit: wc, sort, uniq und nl. Diese Tools lassen sich einzeln oder in Kombination einsetzen, um Texte und Logdateien effizient auszuwerten.


1. wc – Wörter, Zeilen und Zeichen zählen

Der Befehl wc (word count) zählt standardmäßig Zeilen, Wörter und Zeichen einer Datei.

Syntax

wc [Optionen] datei

Beispiele

  • Alle Informationen anzeigen: wc datei.txt Ausgabe: 20 100 550 datei.txt = 20 Zeilen, 100 Wörter, 550 Zeichen
  • Nur Zeilen zählen: wc -l datei.txt
  • Nur Wörter zählen: wc -w datei.txt
  • Nur Zeichen zählen: wc -m datei.txt

2. sort – Daten sortieren

Mit sort lassen sich Zeilen alphabetisch, numerisch oder nach Spalten sortieren.

Syntax

sort [Optionen] datei

Beispiele

  • Alphabetisch sortieren: sort namen.txt
  • Umgekehrt sortieren: sort -r namen.txt
  • Numerisch sortieren: sort -n zahlen.txt
  • Nach Spalte 2 sortieren: sort -k2 datei.txt

3. uniq – Doppelte Zeilen entfernen

uniq entfernt doppelte Zeilen, funktioniert jedoch nur bei sortierten Daten.

Syntax

uniq [Optionen] datei

Beispiele

  • Doppelte Zeilen entfernen: sort namen.txt | uniq
  • Anzahl der Duplikate zählen: sort namen.txt | uniq -c
  • Nur doppelte Zeilen anzeigen: sort namen.txt | uniq -d

4. nl – Zeilen nummerieren

Mit nl können Zeilen nummeriert ausgegeben werden.

Syntax

nl [Optionen] datei

Beispiel

  • Zeilen nummerieren: nl datei.txt

Optionen ermöglichen, leere Zeilen zu überspringen oder die Nummerierung anzupassen.


5. Kombination in Pipelines

Die wahre Stärke dieser Tools zeigt sich in Kombination:

  • Zeilen zählen, sortieren und Duplikate zählen: cat namen.txt | sort | uniq -c | sort -nr → Zeigt die häufigsten Namen in absteigender Reihenfolge
  • Logdateien analysieren: grep "ERROR" /var/log/syslog | sort | uniq -c | sort -nr → Häufigste Fehlermeldungen anzeigen

6. Praxisbeispiele

  1. Wörterbuch-Statistik: wc -l /usr/share/dict/words → Zeigt die Anzahl der Wörter in der System-Wortliste
  2. Server-Zugriffe zählen: awk '{print $1}' access.log | sort | uniq -c | sort -nr | head → Zeigt IPs mit den meisten Zugriffen
  3. CSV-Daten sortieren: sort -t, -k2 daten.csv → Sortiert nach der zweiten Spalte in CSV-Dateien

7. Zusammenfassung

WerkzeugFunktionBeispiel
wcZeilen, Wörter, Zeichen zählenwc -l datei.txt
sortZeilen sortierensort -n zahlen.txt
uniqDoppelte Zeilen entfernen / zählen`sort namen.txt
nlZeilen nummerierennl datei.txt

Kommentare

Schreibe einen Kommentar

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