Einfache Operationen zählen

Möchte man zählen, wie oft eine einfache Operation wie das Kopieren einer Datei ausgefürhrt wurde, muss man dazu diese nicht unbedingt in ein foreach einbetten. Viele Cmdlets besitzen einen PassThru-Parameter, der das Objekt, das von dem Cmdlet bearbeitet wird, wieder in die Pipeline legt.

Die folgende Aufgabenstellung soll gelöst werden: Alle Dateien mit der Erweiterung .Log, in denen mindestens einmal das Wort „Error“ vorkommt, sollen in das Verzeichnis ErrorLogs kopiert und am Ende soll die Anzahl der kopierten Dateien ausgegeben werden. Mit PassThru-Parameter ist die Lösung einfach:

(select-string -list error -path *.log | copy-item -destination ErrorLogs -passthru | measure-object).Count

Schreibe einen Kommentar

Bitte logge dich mit einer dieser Methoden ein, um deinen Kommentar zu veröffentlichen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s