Datei vom FTP-Server holen und vergleichen
Hallo Zusammen,
ich möchte mittels FTP eine Datei von einem Server holen und mit einer lokalen Datei vergleichen.
Mit der aktuelleren der beiden Dateien muss ich weiter arbeiten.
Das Abholen der Datei via FTP mache ich wie folgt in einem Batch:
Die lokale im dem Verzeichnis liegende Datei RT.CSV kopiere ich mir vorher weg (nach RT_LOCAL.CSV)
Nun habe ich mit dem Script die Datei RT.CSV im lokalen Verzeichnis liegen.
Aber wie kann ich denn nun abfragen, welche Datei aktueller ist (RT.CSV oder RT_LOCAL.CSV)?
Mit der aktuelleren Datei muss ich im Skript später weiterarbeiten und Daten auslesen.
Könnt ich mir hier einen Ansatz geben? Sorry, bin nicht der große Batch-Spezialist, eher Anfänger.
Danke und viele Grüße,
Flauschbobbel
ich möchte mittels FTP eine Datei von einem Server holen und mit einer lokalen Datei vergleichen.
Mit der aktuelleren der beiden Dateien muss ich weiter arbeiten.
Das Abholen der Datei via FTP mache ich wie folgt in einem Batch:
...
set scriptdir=%~dp0
set "TmpFTPcmd=%scriptdir%tmpftp"
:: Temopraere Datei (%TmpFTPcmd%) mit FTP-Befehlen erstellen
@echo open 123.123.123.123>%TmpFTPcmd%
@echo benutzername>>%TmpFTPcmd%
@echo password>>%TmpFTPcmd%
@echo cd /home/roabc/tr/daten/data/out>>%TmpFTPcmd%
@echo ls>>%TmpFTPcmd%
@echo get rt.csv>>%TmpFTPcmd%
@echo disconnect 123.123.123.123>>%TmpFTPcmd%
@echo bye>>%TmpFTPcmd%
...
:: FTP mit temporaerer Datei durchfuehren und dann loeschen
start /min /wait ftp -s:%TmpFTPcmd%
del %TmpFTPcmd%>NUL
...
Die lokale im dem Verzeichnis liegende Datei RT.CSV kopiere ich mir vorher weg (nach RT_LOCAL.CSV)
Nun habe ich mit dem Script die Datei RT.CSV im lokalen Verzeichnis liegen.
Aber wie kann ich denn nun abfragen, welche Datei aktueller ist (RT.CSV oder RT_LOCAL.CSV)?
Mit der aktuelleren Datei muss ich im Skript später weiterarbeiten und Daten auslesen.
Könnt ich mir hier einen Ansatz geben? Sorry, bin nicht der große Batch-Spezialist, eher Anfänger.
Danke und viele Grüße,
Flauschbobbel
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 89462
Url: https://administrator.de/contentid/89462
Ausgedruckt am: 22.11.2024 um 10:11 Uhr
3 Kommentare
Neuester Kommentar
Wenn der nach dem Runterladen per FTP immer noch das korrekte Datum zur letzten Änderung anzeigt (also nicht das Datum, wann die Datei kopiert wurde, was ich befürchte), dann kannst Du einfach mit xcopy /d arbeiten. Ansonsten musst Du vor dem runterladen das Datum vergleichen, bei FTP geht das mit modtime. Wie Du das dann allerdings in DOS löst, bin ich leider überfragt.
vg
Bytecounter
vg
Bytecounter
Dann dürfte das schwierig werden. Es gibt wohl FTP-Tools, bei denen das Datum einer Datei beibehalten wird. Aber in wie weit Du die in ein automatisiertes Batch einbinden kannst, weiss ich leider nicht. Einfach mal googlen.
Vllt solltest Du den Ansatz ändern, und das Ganze von einem FTP-Prog erledigen lassen. Ggf. kannst Du ja in der Batch vorher die lokale Datei in ein anderes Verzeichnis sichern.
vg
Bytecounter
Vllt solltest Du den Ansatz ändern, und das Ganze von einem FTP-Prog erledigen lassen. Ggf. kannst Du ja in der Batch vorher die lokale Datei in ein anderes Verzeichnis sichern.
vg
Bytecounter