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
- Wörterbuch-Statistik:
wc -l /usr/share/dict/words
→ Zeigt die Anzahl der Wörter in der System-Wortliste - Server-Zugriffe zählen:
awk '{print $1}' access.log | sort | uniq -c | sort -nr | head
→ Zeigt IPs mit den meisten Zugriffen - CSV-Daten sortieren:
sort -t, -k2 daten.csv
→ Sortiert nach der zweiten Spalte in CSV-Dateien
7. Zusammenfassung
Werkzeug | Funktion | Beispiel |
---|---|---|
wc | Zeilen, Wörter, Zeichen zählen | wc -l datei.txt |
sort | Zeilen sortieren | sort -n zahlen.txt |
uniq | Doppelte Zeilen entfernen / zählen | `sort namen.txt |
nl | Zeilen nummerieren | nl datei.txt |
Schreibe einen Kommentar