Fortgeschrittene Techniken zur Textzählung
In diesem Schritt lernen Sie, wie Sie den wc
-Befehl mit anderen Befehlen mithilfe von Pipes (Rohrleitungen) kombinieren können, um komplexere Textanalyseaufgaben durchzuführen.
Verwenden von wc mit Pipes
Die Stärke von Linux-Befehlen liegt in der Möglichkeit, sie mithilfe von Pipes (|
) zu kombinieren. Eine Pipe sendet die Ausgabe eines Befehls als Eingabe an einen anderen Befehl.
Erstellen wir eine komplexere Textdatei, mit der wir arbeiten können:
cat > ~/project/article.txt << EOF
Linux Text Processing
====================
Text processing is one of the fundamental skills for any Linux user.
The command line offers powerful tools for processing and analyzing text.
Some of the most common text processing commands include:
- grep: for searching text
- sed: for text transformation
- awk: for pattern scanning and processing
- wc: for counting
This article explores the wc command in detail.
EOF
Zählen bestimmter Zeilen
Sie können grep
verwenden, um bestimmte Zeilen zu finden und dann mit wc
zu zählen:
- Zählen Sie, wie viele Zeilen das Wort "text" enthalten:
grep -i "text" ~/project/article.txt | wc -l
Die Option -i
macht die Suche unabhängig von der Groß- und Kleinschreibung. Dieser Befehl sollte die folgende Ausgabe liefern:
3
Dies bedeutet, dass es 3 Zeilen gibt, die das Wort "text" (in beliebiger Schreibweise) in der Datei enthalten.
Zählen von Wörtern in bestimmten Textteilen
Sie können auch die Wörter in bestimmten Teilen einer Datei zählen:
- Zählen Sie die Anzahl der Wörter in Zeilen, die "command" enthalten:
grep "command" ~/project/article.txt | wc -w
Ausgabe:
14
Dies sagt Ihnen, dass es 14 Wörter in den Zeilen gibt, die das Wort "command" enthalten.
Sortieren von Dateien nach Zeilenzahl
Kombinieren wir das, was wir gelernt haben, mit dem sort
-Befehl, um unsere Dateien nach der Zeilenzahl zu organisieren:
wc -l ~/project/*.txt | sort -n
Dieser Befehl:
- Zählt die Zeilen in allen Textdateien
- Verwenden Sie
sort -n
, um die Ergebnisse numerisch (nach der Anzahl der Zeilen) zu sortieren
Die Ausgabe listet die Dateien in aufsteigender Reihenfolge ihrer Zeilenzahl auf, beginnend mit der Datei mit der geringsten Anzahl von Zeilen.
Analysieren von Befehlsausgaben
Sie können wc
verwenden, um die Ausgabe eines beliebigen Befehls zu zählen. Beispielsweise können Sie zählen, wie viele Dateien sich im Projektverzeichnis befinden:
ls ~/project | wc -l
Dies sagt Ihnen die Anzahl der Einträge (Dateien und Verzeichnisse) im Projektverzeichnis.
Als weiteres Beispiel können Sie zählen, wie viele laufende Prozesse Sie derzeit haben:
ps aux | wc -l
Die Ausgabe ist die Anzahl der Zeilen in der Prozessliste, die auch eine Kopfzeile enthält (der tatsächliche Anzahl der Prozesse ist also um eins geringer als die angezeigte Anzahl).