t-rexchen
Goto Top

FTP Sicherung mit Batch Datei

Mein Vorhaben ist es eine Chronologische Sicherung von mehreren FTP Servern zu holen.
Dabei wird die Batchdatei auf einen Server gelegt und mittels Cronjob jede Nacht angestossen. Dann legt die Batchdatei erstmal ein Verzeichnis Jahr-Monat-Tag an und in dem Verzeichnis wird für jeden FTP Zugang ein Unterverzeichnis angelegt.
Danach soll sich auf jeden FTP Server eingeloggt werden und alle Daten runtergeladen werden und in die erstellte Verzeichnisse reinkopiert werden.

Im großen und ganzen läuft die Batchdatei schon. Nur hab ich ein Problem zu erkennen was für Verzeichnisse auf den FTP Server liegen.
Es müsste am besten eine Schleife geben, die abfragt "gibts noch verzeichnisse, wenn ja, dann sag mir das nächste Verzeichnis". Wenn ich den Namen vom nächsten Verzeichnis hab, spring ich da rein und lade alles runter was in dem Verzeichnis ist. Unterverzeichnisse gibts nicht oder sind uninteressant.

Also so eine Verzeichnis Abfrage schaff ich einfach nicht.
Eventuell ist es auch viel einfacher in dem man einfach alles speichert. Problematisch wirds dann natürlich mit den Bildern, da auf den ftp Servern auch Bilder sind.

Danke für eure Hilfe
T-Rex

Content-Key: 89312

Url: https://administrator.de/contentid/89312

Printed on: April 25, 2024 at 06:04 o'clock

Member: T-Rexchen
T-Rexchen Jun 09, 2008 at 08:16:12 (UTC)
Goto Top
Vielleicht gibt es einen xcopy befehl für den ftp bereich?
Member: Baerentatze
Baerentatze Apr 02, 2012 at 21:42:13 (UTC)
Goto Top
Deine Problemlösung ist
1. Den FTP-Server als WINDOWS-Laufwerk verbinden
2. Kopieren/Synchronsieren mit robocopy
3. Laufwerk wieder trennen

Damit das Ganze in einer 3-zeiligen Batch-Datei Platz hat:

1. Installation von http://www.netdrive.net/features.html auf dem WINDOWS-Server/PC
2. Deaktivieren der GUI (ist unperformant)
3. Verwenden der ndcmd.exe zum verbinden und trennen des Laufwerks (entspricht dem net use)
4. Verwenden von robocopy.exe (ist im RessourceKit von WINDOWS2003Server enthalten, ab WINDOWS7 bzw. WINDOWSServer2008 im Auslieferungsstand)

Als Beispiel der o. g. 3-Zeiler:
call "C:\Programme\NetDrive\ndcmd.exe" ftp://ftp.ftpserver.net -l J -u ftp_username -p ftppassword >>protokolldasi.txt
robocopy J: C:\Sicherung_J /mir /LOG+:protokolldasi.txt
call "C:\Programme\NetDrive\ndcmd.exe" -d -l J >>protokolldasi.txt
Mitglied: 106009
106009 Apr 02, 2012 at 22:41:36 (UTC)
Goto Top
Zitat von @Baerentatze:
Deine Problemlösung ist

Das hat er bestimmt in den letzten 4 Jahren allein hinbekommen. face-smile
Vielleicht ist er auch ausgewandert oder hat gar keinen Computer mehr.
Member: Baerentatze
Baerentatze Apr 03, 2012 at 06:05:57 (UTC)
Goto Top
Nachdem ich selbst verzweifelt in allen Foren nach dieser Lösung gesucht habe, wollte ich nach jahrelangem Lesen meinem Forum etwas Gutes tun. face-smile
Selbst beim Googeln nach ndcmd.exe (zugegeben: nur auf deutschsprachigen Seiten) findet man nur Anfragen und Hinweise auf die Sicherheit der Datei.
Vielleicht hast Du einen Tip, wo der Inhalt besser plaziert wäre.

Sonst ist es für alle die, die dableiben, immer noch mehrere Computer haben und denen dieser Ansatz hilft.
Mitglied: 106009
106009 Apr 03, 2012 at 08:56:35 (UTC)
Goto Top
Hi,
das ist ja im Prinzip ein sehr lobenswertes Vorgehen deinerseits, wenn du erwähnt hättest, dass dir das Alter des Themas bekannt ist und du das "D" in "Deine" einfach weggelassen hättest. :-P

Vielleicht hast Du einen Tipp, wo der Inhalt besser platziert wäre.

Du könntest z. B. einen Tipp erstellen:
https://administrator.de/discover/

Gruß