Dateien erkennen, verschieben und E-Mail Benachrichtigung
Hallo liebes Forum,
ich beschäftige mich zurzeit mit folgender Aufgabenstellung und bräuchte eure Hilfe. Ich bin kein Programmierer und habe bereits viel gesucht und recherchiert, leider nicht erfolgreich.
Per SFTP sollen Kunden ihre Dateien in einem persönlichen Bereich ablegen können. Der Auftraggeber möchte allerdings nicht 50 Unterordner durchsuchen müssen. Er möchte per E-Mail benachrichtigt werden, wenn Änderungen vorgenommen werden. Es können einzelne Dateien aber auch eine Ordnerstruktur kann dort hochgeladen werden.
Die Dateien, Ordner sollen nach dem Hochladen verschoben werden. Das sind meine Randbedingungen.
Folgendes Script verschiebt zumindest die neuen Dateien, leider keine Ordner!
### SET FOLDER TO WATCH + FILES TO WATCH + SUBFOLDERS YES/NO
$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "C:\SFTP-Root"
$watcher.Filter = "*.*"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true
### DEFINE ACTIONS AFTER AN EVENT IS DETECTED
$action = { $path = $Event.SourceEventArgs.FullPath
$changeType = $Event.SourceEventArgs.ChangeType
$logline = "$(Get-Date), $changeType, $path"
Add-content "D:\log.txt" -value $logline
robocopy /MOV C:\SFTP-Root\Kunde1 \\file-server\SFTP\Kunde1
}
### DECIDE WHICH EVENTS SHOULD BE WATCHED
Register-ObjectEvent $watcher "Created" -Action $action
Register-ObjectEvent $watcher "Changed" -Action $action
Register-ObjectEvent $watcher "Deleted" -Action $action
Register-ObjectEvent $watcher "Renamed" -Action $action
while ($true) {sleep 5}
Wie kann ich bewerkstelligen, dass die Dateien und/oder Ordner aller Kunden in ihrem geschützen Bereich (Kunde1, Kundes2 etc.) in einem Netzwerkshare z.b. "\\file-server\SFTP\Kunde1, Kunde2" verschoben werden und eine E-Mail generiert wird?
Es muss nicht dieses Script werden, bin da offen!
P.S. Hab diesen Eintrag gefunden, nicht genau das was ich brauche...
Neue Datei auf FTP-Server erkennen und per Email (als Anhang) versenden an feste Emailadresse (Blat, AutoIT, WatchFTP ?)
Powershell - Dateien automatisiert verschieben und umbennen
Vielen Dank im Voraus!
CU
ich beschäftige mich zurzeit mit folgender Aufgabenstellung und bräuchte eure Hilfe. Ich bin kein Programmierer und habe bereits viel gesucht und recherchiert, leider nicht erfolgreich.
Per SFTP sollen Kunden ihre Dateien in einem persönlichen Bereich ablegen können. Der Auftraggeber möchte allerdings nicht 50 Unterordner durchsuchen müssen. Er möchte per E-Mail benachrichtigt werden, wenn Änderungen vorgenommen werden. Es können einzelne Dateien aber auch eine Ordnerstruktur kann dort hochgeladen werden.
Die Dateien, Ordner sollen nach dem Hochladen verschoben werden. Das sind meine Randbedingungen.
Folgendes Script verschiebt zumindest die neuen Dateien, leider keine Ordner!
### SET FOLDER TO WATCH + FILES TO WATCH + SUBFOLDERS YES/NO
$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "C:\SFTP-Root"
$watcher.Filter = "*.*"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true
### DEFINE ACTIONS AFTER AN EVENT IS DETECTED
$action = { $path = $Event.SourceEventArgs.FullPath
$changeType = $Event.SourceEventArgs.ChangeType
$logline = "$(Get-Date), $changeType, $path"
Add-content "D:\log.txt" -value $logline
robocopy /MOV C:\SFTP-Root\Kunde1 \\file-server\SFTP\Kunde1
}
### DECIDE WHICH EVENTS SHOULD BE WATCHED
Register-ObjectEvent $watcher "Created" -Action $action
Register-ObjectEvent $watcher "Changed" -Action $action
Register-ObjectEvent $watcher "Deleted" -Action $action
Register-ObjectEvent $watcher "Renamed" -Action $action
while ($true) {sleep 5}
Wie kann ich bewerkstelligen, dass die Dateien und/oder Ordner aller Kunden in ihrem geschützen Bereich (Kunde1, Kundes2 etc.) in einem Netzwerkshare z.b. "\\file-server\SFTP\Kunde1, Kunde2" verschoben werden und eine E-Mail generiert wird?
Es muss nicht dieses Script werden, bin da offen!
P.S. Hab diesen Eintrag gefunden, nicht genau das was ich brauche...
Neue Datei auf FTP-Server erkennen und per Email (als Anhang) versenden an feste Emailadresse (Blat, AutoIT, WatchFTP ?)
Powershell - Dateien automatisiert verschieben und umbennen
Vielen Dank im Voraus!
CU
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 4074974606
Url: https://administrator.de/contentid/4074974606
Ausgedruckt am: 19.11.2024 um 13:11 Uhr
2 Kommentare
Neuester Kommentar
https://de.syncovery.com/
Macht genau das was Du brauchst. In allen Variationen, als Dienst im Hintergrund.
MfG,
MacLeod
Macht genau das was Du brauchst. In allen Variationen, als Dienst im Hintergrund.
MfG,
MacLeod