Remove-SftpFilesOlderThan

EulandaXtools — Funktionsreferenz

Remove-SftpFilesOlderThan

ÜBERSICHT

Löscht bestimmte Dateien aus einem SFTP-Verzeichnis, die älter als eine bestimmte Anzahl Tage sind. Unterstützt -WhatIf und -Confirm zur Simulation und Sicherheitsabfrage.

SYNTAX

Remove-SftpFilesOlderThan [-Partner] <hashtable> [-PartnerName] <string> [-DataPath] <string>
    [[-Extension] <string>] [[-Days] <int>] [-UseBaseDateFromFile] [[-MinFiles] <int>]

BESCHREIBUNG

Kann direkt mit einem Partnerobjekt oder über Partnername zzgl. DataPath arbeiten. Es wird nur nach dem Datum (yyyy-MM-dd) geprüft, sodass alle Dateien eines Tages vollständig gelöscht werden. Zusätzlich wird nach einer bestimmten Dateiendung gefiltert. Als Basisdatum kann wahlweise das aktuelle Datum oder das Datum der neuesten Datei am SFTP dienen. Optional kann festgelegt werden, dass immer mindestens eine bestimmte Anzahl Dateien im Verzeichnis verbleibt, unabhängig vom Alter.

PARAMETER

-Partner

Type: hashtable

Partnerobjekt aus der JsonDb.

-PartnerName

Type: string

Name des Partners.

-DataPath

Type: string

Pfad zur JsonDb, wenn PartnerName verwendet wird.

-Extension

Type: string
Default: '.done'

Dateiendung, Default '.done'.

-Days

Type: int
Default: 14

Alter in Tagen, Default 14.

-UseBaseDateFromFile

Type: switch

Wenn gesetzt, wird das Datum der neuesten Datei als Basis genommen, andernfalls das aktuelle Datum.

-MinFiles

Type: int
Default: 0

Minimale Anzahl Dateien, die im Verzeichnis verbleiben sollen. Default 0 (= deaktiviert).

AUSGABEN

System.Int32

Anzahl gelöschter Dateien

BEISPIELE

# Mit Partnerobjekt, aktuelles Datum als Basis
$partner = Get-ScheduledPartners -JsonDb 'database\partner.json' | Where-Object partnerName -eq 'MARKANT'
Remove-SftpFilesOlderThan -Partner $partner
# Mit Partnername, neueste Datei als Basis, Simulation
Remove-SftpFilesOlderThan -PartnerName 'MARKANT' -DataPath 'database' -UseBaseDateFromFile -WhatIf

HINWEISE

WhatIf/Confirm: