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.

Measure-Object Zeilen Buchstaben Wörter Textdatei PowerShell

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
Inhalt Textdatei Measure-Object Powershell

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.

Measure-Object -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.

Johannes Huber
 

In seiner Freizeit macht Johannes nichts lieber, als für ITnator Beiträge zu schreiben. Input bekommt er hierfür von Problemen in der IT Administration von Servern, Clients und vielen weiteren IT Komponenten.

sidebar
>