Der Linux-Befehl wc wird verwendet, um die Anzahl der Wörter, Zeilen und Zeichen in einer Datei zu zählen. Das „wc“ steht für Word Count.
Linux wc-Befehl
Sehen wir uns an, wie der Befehl wc von der Manpage definiert wird. Auf die Manpage kann durch Eingabe des folgenden Befehls zugegriffen werden.
Linux-WC-Manpage
Folgendes wird als Ausgabe angezeigt. Lassen Sie uns die WC-Hilfeseite Stück für Stück verstehen.
Ausgabe der Linux-WC-Hilfe
Der wc-Befehl kann wie beschrieben verwendet werden, um die Anzahl der Zeilenumbrüche, Wörter oder Bytes zu erhalten, die in einer angegebenen Datei enthalten sind.
Die Ausgabe enthält die Anzahl der Zeilenumbrüche, Wörter oder Bytes (dateiweise, falls mehrere Dateien eingegeben werden), gefolgt von einer „Gesamt“-Zeile am Ende, die die Gesamtsumme der Wörter, Zeilenumbrüche oder Bytes in allen Dateien anzeigt .
Syntax des wc-Befehls
$ wc [OPTION]… [FILE]…
Wc-Befehlsbeispiel für Linux
Sehen wir uns ein Beispiel an, um den wc-Befehl zu verstehen.
Ich habe 2 Beispieltextdateien erstellt – test.txt und test2.txt auf dem Desktop und bin mit dem cd-Befehl zum Desktop-Verzeichnis navigiert.
Wenn Sie nun den wc-Befehl gemäß der Syntax eingeben und ausführen, erhalten Sie die folgende Ausgabe.
Ausgabe des Linux-WC-Befehls
Die Ausgabe hat 3 Zeilen, die test.txt, test2.txt bzw. total entsprechen.
- Die erste Spalte in der Ausgabe zeigt die Anzahl der Zeilen in der Datei. Da es in den beiden oben gezeigten Textdateien nur eine einzige Zeile gibt, ist die Ausgabe 1 für test.txt und test2.txt.
- Die zweite Spalte in der Ausgabe zeigt die Anzahl der Wörter in der Datei, in unserem Fall 12 bzw. 15.
- Die dritte Spalte in der Ausgabe zeigt die Anzahl der Bytes + 1 (oder Zeichen, da jedes Zeichen 1 Byte im Speicher belegt) in der Datei an, was in unserem Fall 58 bzw. 74 in test und test2 ist. (Das zusätzliche Byte +1 ist darauf zurückzuführen, dass „\n“ am Ende der Zeile automatisch vom Texteditor hinzugefügt wird).
- Die Gesamtzeile zeigt einfach die Summe der Zeilen, Wörter und Bytes in allen in der Eingabe erwähnten Dateien an.
Wc-Befehlsoptionen für Linux
Die Manpage enthält Informationen zu wc-Befehlsoptionen.
Linux wc-Befehlsoptionen
Die folgenden Optionen, wie oben gezeigt, können mit dem Befehl verwendet werden, um bestimmte Zählungen zu drucken – nur das, was vom Benutzer benötigt wird.
- -c, –bytes Die Option kann verwendet werden, um die Anzahl der Bytes + 1 in einer Datei wie unten gezeigt zu drucken. Wenn mehrere Dateien eingegeben werden, wird in der Ausgabe auch eine zusätzliche Summenzeile angezeigt.
Linux wc -c –bytes Option
- -m, –chars kann verwendet werden, um nur die Anzahl der Zeichen + 1 in einer Datei zu drucken, wie unten gezeigt. Da in diesem Beispiel die Anzahl der Zeichen der Anzahl der Bytes entspricht, ist die Ausgabe für -c und -m gleich.
- -l oder –lines kann verwendet werden, um nur die Anzahl der Zeilen in einer Datei zu drucken, wie unten gezeigt. Wenn mehrere Dateien bereitgestellt werden, wird in der Ausgabe auch eine zusätzliche Summenzeile angezeigt.
- -L oder –max-line-length kann verwendet werden, um die Anzahl der Zeichen in der Zeile mit der maximalen Anzahl von Zeichen aller in der Datei vorhandenen Zeilen zu drucken.
- -w oder –words kann verwendet werden, um nur die Anzahl der Wörter in einer Datei zu drucken, wie unten gezeigt.
- –files0-from=F kann verwendet werden, um Eingaben aus Dateien zu lesen, deren Namen in einer Datei F enthalten sind, getrennt durch Nullzeichen (Bytewert 0) und nicht durch Leerzeichen/Tabulatoren/Endzeile. Falls keine Datei vorhanden ist oder der Dateiname „-“ ist, wird die Eingabe direkt von der Standardeingabe gelesen.
Anzahl der Linux-WC-Zeilen
Linux wc -L-Option
Hier habe ich 2 neue .txt-Dateien erstellt – file1.txt und file2.txt, die die Namen einiger Obst- bzw. Autofirmen enthalten.
Wir können sehen, dass die Ausgabe 10 für file1.txt und 13 für file2.txt anzeigt. Die Zeilen „Watermelon“ und „Maruti Suzuki“ sind die längsten in ihren jeweiligen Dateien und haben 10 bzw. 13 Zeichen.
Möglicherweise stellen Sie fest, dass die Gesamtzeile eine falsche Summe anzuzeigen scheint. Dies liegt daran, dass bei Verwendung von -L total die größte Zahl unter den darüber angezeigten als Ausgabe anzeigt, was in unserem Fall 13 ist.
Linux wc Wörter zählen
Linux-WC-Dateien von
Wenn – als Dateiname geschrieben und der Befehl ausgeführt wird, wartet Terminal auf eine Eingabe. Wenn wir dann den Dateinamen eingeben und zweimal Strg+D drücken, wird die Ausgabe in derselben Zeile wie gezeigt angezeigt. Sobald keine weiteren Eingaben erforderlich sind, wird Strg+C gedrückt, um den Vorgang zu beenden.
WC-Befehl mit cat und grep verwenden
Der Linux-wc-Befehl kann auch Eingaben direkt von der Standard-Eingabe-Ausgabe eines anderen Befehls entgegennehmen und kann als Eingabe an wc umgeleitet werden. Dies ist sehr nützlich für die Verwendung mit anderen Befehlen wie cat und grep.
Linux wc Mit cat-Befehl
Hier wurde die Ausgabe von cat von stdout zu stdin des wc-Befehls geleitet (umgeleitet). Die Ausgabe für test und test2 kann auch auf diese Weise angezeigt werden.
Linux wc Mit grep-Befehl
In diesem Beispiel ist es unser Ziel, die Gesamtzahl der Zeilen in file1.txt zu finden, die den Buchstaben „e“ enthalten. Dazu wird grep wie gezeigt verwendet, um den Buchstaben „e“ aus der Datei herauszufiltern. Dann wird die Ausgabe an die Standardeingabe von wc geleitet (umgeleitet). Wir haben die Option -l zu wc hinzugefügt, um die Anzahl der Zeilen in der Eingabe zu finden.
Daher ergibt unsere Ausgabe 4, da alle Namen von Früchten den Buchstaben „e“ enthalten, mit Ausnahme von Kiwi in der letzten Zeile.
Schlussfolgerung
Der Linux-wc-Befehl ist einfach, leicht zu verwenden und kann verwendet werden, um nützliche Informationen aus Dateien zu suchen/herauszufiltern, indem er mit anderen Befehlen wie cat
kombiniert wird und grep
. Aufgaben wie das Finden der Anzahl von Zeilen, die bestimmte Alphabete in einem riesigen Text enthalten, können zeitaufwändig sein, wenn sie manuell ausgeführt werden. Dieser Befehl hilft, solche Probleme in Sekundenschnelle zu lösen.