Sync Folder by Checksum
Zuletzt geändert: 14.03.2026 05:56

Sync-FolderByChecksum #

ÜBERSICHT #

Synchronisiert ein lokales Verzeichnis mit einem Zielverzeichnis anhand von SHA256-Prüfsummen.

SYNTAX #

Sync-FolderByChecksum [-Path] <string> [-Destination] <string> [[-ChecksumFile] <string>] [-Force]
    [<CommonParameters>]

BESCHREIBUNG #

Diese Funktion kopiert nur geänderte oder neue Dateien vom Quellverzeichnis in ein Zielverzeichnis. Für jede Datei wird eine SHA256-Prüfsumme berechnet und mit einer gespeicherten Prüfsummenliste verglichen. Nur abweichende oder neue Dateien werden übertragen.

Dateien, die im Ziel vorhanden aber in der Quelle nicht mehr existieren, werden automatisch gelöscht. Leere Unterverzeichnisse im Ziel werden ebenfalls bereinigt.

Die Prüfsummenliste wird als tabulatorgetrennte Datei im Zielverzeichnis gespeichert. Während der Synchronisation wird eine temporäre Sperrdatei verwendet, um parallele Läufe zu verhindern.

PARAMETER #

-Path #

Type: string

Quellverzeichnis mit den zu synchronisierenden Dateien.

-Destination #

Type: string

Zielverzeichnis (lokal oder UNC-Pfad), das mit dem Quellverzeichnis abgeglichen wird.

-ChecksumFile #

Type: string
Default: 'checksum.txt'

Dateiname der Prüfsummendatei im Zielverzeichnis. Standard: ‘checksum.txt’.

-Force #

Type: switch

Erzwingt die Ausführung, auch wenn eine temporäre Sperrdatei von einem abgebrochenen Lauf existiert.

AUSGABEN #

[PSCustomObject] mit den Eigenschaften CopiedCount, DeletedCount, SkippedCount.

BEISPIELE #

Sync-FolderByChecksum -Path 'C:\Build\public' -Destination '\\server\web\seite'
Sync-FolderByChecksum -Path '.\out' -Destination 'D:\Ziel' -Force -Verbose