Textdatei: Zeilen, Wörter, Buchstaben mit Measure-Object
Das PowerShell Cmdlet Measure-Object berechnet numerische Eigenschaften von Dateien und Ordnern. Ein Beispiel ist hier das Ermitteln von Zeilen, Wörtern und sogar einzelnen Buchstaben einer Textdatei.
Wörter, Zeilen und Buchstaben einer Textdatei ermitteln mit Measure-Object in PowerShell
Das PowerShell Commandlet Measure-Object
bietet die Möglichkeit die numerischen Eigenschaften zu ermitteln. Somit ist es ganz einfach möglich die einzelnen Wörter, Buchstaben und sogar Zeilen einer Text-Datei zu ermitteln. Hierbei helfen folgende Parameter:
-word
-line
-character
Grundlage für dieses Beispiel ist die Text-Datei oben.
Inhalt der Text-Datei auslesen
Als erstes muss der Inhalt der Textdatei ausgelesen werden, um danach die Eigenschaften in Form von Wörtern, Zeilen und Zeichen ermitteln zu lassen. Den Inhalt einer Datei erhält man in PowerShell mit dem Cmdlet Get-Content
.
Get-Content C:\Users\huberj\Desktop\www.ITnator.net.txt
Dies könnte man beispielsweise in eine Variable speichern lassen. In unserem Beispiel nutzen wir dann allerdings ein Pipe, was Zeit und Code im Script spart.
Einzelne Wörter, Zeichen und Zeilen aus dem Inhalt ermitteln mit Measure-Object
Da nun der Inhalt der Textdatei ausgelesen wurde, kann nun das eigentliche Ermitteln der Eigenschaften beginnen. Folgende Werte sind für unser Vorhaben relevant:
- Zeilen
- Buchstaben
- Wörter
Um diese Werte in numerischer Form zu erhalten, verwendet man folgenden PowerShell Befehl mit Measure-Object
:
Get-Content C:\Users\huberj\Desktop\www.ITnator.net.txt | Measure-Object -word -line -character
Als Ergebnis erhalten wir eine Auflistung der Lines (Zeilen), Words (Wörter) und Characters (Zeichen). So gut wie jede Text-Datei hat allerdings Leerzeichen und Absätze, welche man meist nicht mitzählen möchte. Abhilfe schafft hier der Parameter -IgnoreWhiteSpace
.
Wie man im Bild schön sehen kann, verändert sich das Ergebnis lediglich in den Characters (Zeichen). Die Vorhandenen Wörter und auch Zeilen im Dokument bleiben natürlich gleich. Somit ist mit Measure-Object eine einfache Möglichkeit geschaffen die einzelnen Werte, beziehungsweise Eigenschaften eines Text-Dokuments zu ermitteln.