Remove-FtpFilesOlderThan #
ÜBERSICHT #
Löscht bestimmte Dateien aus einem FTP- oder FTPS-Verzeichnis, die älter als eine bestimmte Anzahl Tage sind. Unterstützt -WhatIf und -Confirm zur Simulation und Sicherheitsabfrage.
SYNTAX #
Remove-FtpFilesOlderThan [-Server] <string> [[-Protocol] <string>] [[-Port] <int>] [-ActiveMode]
[-User] <string> [[-Password] <securestring>] [[-PlainPassword] <string>] [[-PasswordPath]
<string>] [-RemoteFolder] <string> [[-Extension] <string>] [[-Days] <int>] [[-MinFiles] <int>]
[-UseBaseDateFromFile]
BESCHREIBUNG #
Diese Funktion verbindet sich mit einem FTP- oder FTPS-Server und löscht Dateien in einem Remote-Verzeichnis, die älter als eine bestimmte Anzahl Tage sind. Optional kann eine Dateierweiterung gefiltert werden, und es kann festgelegt werden, dass immer mindestens eine bestimmte Anzahl Dateien im Verzeichnis verbleibt.
Unterstützt FTP und FTPS (explizit), aktiven oder passiven Modus, sowie Authentifizierung über SecureString, Klartext oder Passwortdatei.
PARAMETER #
-Server #
Type: string
Hostname oder IP-Adresse des FTP-Servers.
-Protocol #
Type: string
Default: 'ftp'
Gibt das Protokoll an (ftp oder ftps). Standard: ftp.
-Port #
Type: int
Default: 21
Portnummer des Servers. Standard: 21.
-ActiveMode #
Type: switch
Wenn gesetzt, wird der aktive FTP-Modus verwendet. Standard ist passiv.
-User #
Type: string
Benutzername für die Anmeldung.
-Password #
Type: securestring
Passwort als SecureString.
-PlainPassword #
Type: string
Passwort im Klartext. Wird intern in SecureString konvertiert.
-PasswordPath #
Type: string
Pfad zu einer Datei, die das Passwort enthält (Text oder XML via Export-Clixml).
-RemoteFolder #
Type: string
FTP-Verzeichnis, in dem die Dateien geprüft und ggf. gelöscht werden.
-Extension #
Type: string
Default: '.done'
Filtert Dateien nach einer Erweiterung (z. B. .done). Standard: .done.
-Days #
Type: int
Default: 14
Alter in Tagen. Dateien, die älter als dieser Wert sind, werden gelöscht. Standard: 14.
-MinFiles #
Type: int
Default: 0
Minimale Anzahl Dateien, die im Verzeichnis verbleiben sollen (z. B. 5). Standard: 0.
-UseBaseDateFromFile #
Type: switch
Wenn gesetzt, wird das Datum der neuesten Datei als Basisdatum verwendet, sonst das aktuelle Datum.
AUSGABEN #
int
Anzahl gelöschter Dateien.
BEISPIELE #
# Löscht .done-Dateien, die älter als 14 Tage sind
Remove-FtpFilesOlderThan -Server 'ftp.example.com' -User 'admin' -PlainPassword 'secret' `
-RemoteFolder '/queue' -Extension '.done' -Days 14
# Simulation mit WhatIf (zeigt nur an, was gelöscht würde)
Remove-FtpFilesOlderThan -Server 'ftp.example.com' -Protocol 'ftps' -User 'cn' `
-PasswordPath 'C:\Users\cn\.eulandaconnect\pw.xml' `
-RemoteFolder '/archive' -Extension '.zip' -Days 30 -MinFiles 2 -WhatIf
VERWANDTE LINKS #
- Get-FtpDir
- Get-FtpFileAge
- Get-FtpFileDate
- Get-FtpFileSize
- Get-FtpNewestFilename
- Get-FtpOldestFilename
- New-FtpFolder
- Receive-FtpFile
- Remove-FtpFile
- Remove-FtpFolder
- Rename-FtpFile
- Rename-FtpFolder
- Send-FtpFile
- Test-FtpFile
- Test-FtpFolder
HINWEISE #
- Unterstützt FTP und FTPS (explizit)
- Unterstützt -WhatIf und -Confirm (ConfirmImpact=‘High’)
- Kompatibel mit PowerShell 5.1 und 7+