Start-Watcher

EulandaXtools — Funktionsreferenz

Start-Watcher

ÜBERSICHT

Überwacht einen angegebenen Ordner auf Änderungen und protokolliert Ereignisse optional in eine Logdatei und/oder zeigt Toast-Benachrichtigungen an.

SYNTAX

Start-Watcher [[-Path] <string>] [[-LogFile] <string>] [-IncludeSubDir] [-ToastNotification]
    [[-ExpectedFileCount] <int>] [-MockSupport]

BESCHREIBUNG

Die Funktion Start-Watcher richtet eine permanente Überwachung für Dateiänderungen, Löschungen, Umbenennungen und Erstellung neuer Dateien in einem angegebenen Verzeichnis ein. Es können optional auch Unterordner einbezogen werden.

Ereignisse werden mit Datum, Uhrzeit, Aktion und Dateipfad protokolliert. Das Logfile ist optional und wird automatisch im Desktop-Ordner erstellt, wenn kein Pfad angegeben ist. Die Dateierweiterung ".log" wird automatisch ergänzt, falls keine angegeben wurde.

Bei Aktivierung von Toast-Benachrichtigungen erscheint bei jeder Dateiänderung eine visuelle Meldung im Windows-Benachrichtigungsbereich. Das benötigte Modul BurntToast wird bei Bedarf automatisch installiert (ohne Adminrechte).

Zusätzlich kann beim Start überprüft werden, ob die Anzahl der Dateien im Ordner einem erwarteten Wert entspricht. Bei Abweichungen erfolgt eine Warnung per Logfile und/oder Toast.

PARAMETER

-Path

Type: string
Default: (Join-Path $env:TEMP '{Eulanda}\xfacture\bin')

Der zu überwachende Ordner. Standardmäßig ist dies der Pfad "%TEMP%\{Eulanda}\xfacture\bin".

-LogFile

Type: string
Default: $null

Optionaler Pfad zur Logdatei. Falls nur ein Dateiname angegeben wird, wird dieser automatisch im Desktop-Ordner abgelegt und mit ".log" erweitert, wenn keine Erweiterung angegeben ist. Wenn nicht angegeben, erfolgt keine Protokollierung.

-IncludeSubDir

Type: switch

Schalter, der angibt, ob Unterordner einbezogen werden sollen.

-ToastNotification

Type: switch

Schalter, der angibt, ob Windows Toast-Benachrichtigungen angezeigt werden sollen.

-ExpectedFileCount

Type: int

Optionaler Parameter, der beim Start überprüft, ob die aktuelle Dateianzahl im überwachten Ordner dem angegebenen Wert entspricht. Bei Abweichungen erfolgt eine Warnmeldung.

-MockSupport

Type: switch

(Intern) Wird ausschließlich für automatisierte Tests verwendet. Verhindert, dass Banner und Endlosschleife ausgeführt werden, damit die Funktion im Unit-Test getestet werden kann. Diesen Parameter nicht produktiv verwenden.

BEISPIELE

# Startet die Überwachung mit Logfile auf dem Desktop als "WatcherLog.log", aktiviert
# Toast-Benachrichtigungen und warnt, falls beim Start nicht genau 35 Dateien im Ordner liegen.
Start-Watcher -LogFile "WatcherLog" -ToastNotification -ExpectedFileCount 35
# Startet die Überwachung ohne Log und ohne Toast, berücksichtigt jedoch alle Unterordner.
Start-Watcher -IncludeSubDir

HINWEISE

Kompatibel mit PowerShell 5.x und PowerShell 7.x. Erfordert keine Administratorrechte.