flauschbobbel
Goto Top

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:

...
	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

Content-Key: 89462

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

Printed on: April 23, 2024 at 17:04 o'clock

Member: bytecounter
bytecounter Jun 10, 2008 at 08:30:21 (UTC)
Goto Top
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
Member: Flauschbobbel
Flauschbobbel Jun 10, 2008 at 17:38:31 (UTC)
Goto Top
Hallo bytecounter,

danke schon mal für die Info. Wie ich das im DOS Batch löse ist genau mein Problem.
Er zeigt das Datum wann die Datei kopiert wurde...

Habt Ihr noch weitere Ideen?

Danke,
Flauschbobbel
Member: bytecounter
bytecounter Jun 11, 2008 at 07:32:40 (UTC)
Goto Top
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