wc

Der Shell Befehl wc ist nach der englischen Bezeichnung seiner Funktion "word count" benannt. Wenn Sie die Anzahl Zeilen, Wörter, Buchstaben oder Bytes in Ihren Dateien bestimmen wollen, können Sie sich mit dem Shell Befehl wc eine Statistik dieser Werte ausgeben lassen.

Der Shell Befehl wc kann sowohl als Filter einen Text von der Standardeingabe, als auch auf der Kommandozeile angegebene Dateien bearbeiten. Arbeitet wc als Filter, liest das Programm so lange von der Standardeingabe, bis es ein Dateiende-Zeichen (Ctrl-D) findet, und gibt dann nur die Anzahl der gefundenen Einheiten aus. Im Normalfall ist das die Zeilenzahl, gefolgt von der Anzahl der Wörter und schließlich die Anzahl der Zeichen. Beim Bearbeiten benannter Dateien folgt dann noch der Dateiname. Wenn Sie mehrere Dateinamen angeben, dann erzeugt der Shell Befehl wc für jede Datei eine Zeile mit den Werten in dieser Datei und zusätzlich noch eine Zeile mit den Gesamtsummen der einzelnen Werte über alle Dateien.

Sind Sie nur an einzelnen Werten interessiert, dann können Sie dem Shell Befehl wc mit Hilfe von Kommandozeilenschaltern mitteilen, welche Einheiten er berechnen soll. Die Angabe -l steht für die Berechnung von Zeilen (englisch lines), mit -w werden Worte gezählt, -m zählt Zeichen und -c Bytes. Die Unterscheidung zwischen -m und -c ist nur bei Multi-Byte-Zeichensätzen von Bedeutung, zum Beispiel bei dem Unicode-Zeichensatz UTF-8. Außer der genannten Schalter akzeptiert der Shell Befehl wc auch noch ein groß geschriebenes -L und gibt dann die Länge der längsten Zeile im Text aus.

Die genannten Kommandozeilenschalter für den Shell Befehl wc können Sie auch kombinieren. Wenn Sie zum Beispiel die Anzahl der Wörter und die maximale Zeilenlänge wissen wollen, dann erreichen Sie das durch den Aufruf von "wc -wL" oder "wc -Lw". Die Reihenfolge der Optionen ist hierbei egal. Die Ausgabe der Werte erfolgt immer in der Standardreihenfolge.

In der Version der Gnu-Tools, die unter Linux üblicherweise benutzt wird, kennt der Shell Befehl wc, neben den genannten Optionen, auch noch den Schalter --files0-from=FILE. Diese Option ist besonders nützlich, wenn Sie Dateien bearbeiten wollen, deren Namen Leerzeichen enthalten. Der Shell Befehl wc liest dann die Namen der zu bearbeitenden Dateien aus der angegebenen Datei FILE. Das lässt sich am besten an einem Beispiel erklären. Setzen Sie das Kommando "find . -name '*.txt' -print0 | wc -w --files0-from=-" auf einer Kommandozeile ab, dann sucht das find-Kommando alle Dateien mit Endung "txt" und wc zählt die Wörter in diesen Dateien. Der Dateiname "-" bezeichnet hier wie üblich die Standardeingabe.

Montag, 26 März 2012 Posted in Linux Befehle FAQ
  • Sie haben Fragen?
    Tel.: 06181 - 502 30 10
    E-Mail: Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!

K

o

n

t

a

k

t