62740
Goto Top

NEUESTE DATEI auf FTP Server erfragen und runterladen?

NEUESTE DATEI auf FTP Server erfragen und runterladen?

Hallo Leute.
Ich habe folgendes Problemchen auf Win XP Prof.:

Ich einer Batch Datei verbinde ich mich mit einem externen FTP-Server und lade Dateien herunter. Prima.
Nun, in einem nächsten Schritt möchte ich die aktuellste Datei auf dem externen Server finden.

Lokal geht das z.B. mit:
for /f %i in ('dir /b /od "*.*"') do @set NeuesteDatei=%i

Wie geht sowas unter FTP, und wie kann ich die gefundene Datei dann herunterladen?

Gibt es evtl. ganz andere Ansätze?

Vielen Dank schonmal und beste Grüße,
kingofberus

Content-Key: 82931

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

Printed on: May 8, 2024 at 06:05 o'clock

Mitglied: 60730
60730 Mar 12, 2008 at 11:17:48 (UTC)
Goto Top
Hi,

um was gehts genau?

Wäre folgender Ansatz was für dich?

Spiegel den kompletten FTP Server Ordner lokal und such dir dann mit dem bereits geschilderten Weg lokal die aktuellste Datei raus.

WSFTP kennst du?
Wget auch?
Mitglied: 62740
62740 Mar 12, 2008 at 11:48:04 (UTC)
Goto Top
... hört sich vielversprechend an!

Bevor ich mir das jetzt mühsam zusammenklabüster ..: Wie mach ich das mit dem Spiegeln?

Wget und WSFTP kenn ich. Allerdings frag ich mich, was die beiden für einen Unterschied machen, wenn ich von der Kommandozeile aus, bzw. mit batch arbeite?

besten Dank für die Antwort!
Mitglied: 60730
60730 Mar 12, 2008 at 12:16:56 (UTC)
Goto Top
Hi,

bin etwas in Eile und daher gibts nur Hilfe zur Selbsthilfe.

Egal, ob WSFTP oder Wget, beide werden per Batch gestartet und haben eine Steuerdatei.

Im Fall von Wget benutzt du Open Source im Fall von WSFTP eine kommerzielle Lösung.

Ich hab das mal mit WSFTP gelöst - genauer mit ftpsync.

Folgende steuerdatei benutze ich, um das zu starten - wsftp klemmt auch in unserem intranet manchmal, deswegen frage ich den Status ab, ob "completed" im log drin steht.

Da ich damit mehrere Ordner synce - steht im Script auch %1 und kein Ordnername.

Steuerbatch
:start
echo %1
%programfiles%\WS_FTP\ftpsync.exe %1.ctl
findstr /c:"Completed" %1.log  
echo %errorlevel%
IF %ERRORLEVEL% GTR 0 goto start
IF %ERRORLEVEL% EQU 0 goto end

:end
del /q %1.log


Steuerdatei 4 ftpsync.ctl

V1
F48
Z0
T0
S = Serverip oder servername
R = remote Pfad
L 0 lokaler Pfad
U - hier steht der ftp user
P - hier das dazugehörige Passwort
E

Du mußt dir die Hilfe von FTPsync genau durchlesen und ganz am Ende die ctl Datei schreibschützen, das ftpsync löscht ganz gerne das Passwort, wenn man "nur mal" reinschaut, ohne zu speichern.
Member: miniversum
miniversum Mar 12, 2008 at 12:23:09 (UTC)
Goto Top
In der Eingabeaufforderung gibt es den Befehl "ftp" und dort auch den Befehl "dir". Schau dir das mal an.
Willst Du das ganze per batch oder so lösen dann kannst du dem "FTP"-Befehl auch eine Datei schicken der die ganzen Einzelbefehle enthällt. Einzelne Postings wie das genauer geht wurden hier imem rmal wieder gebracht. Kannst ja mal suchen.
Mitglied: 62740
62740 Mar 12, 2008 at 12:26:25 (UTC)
Goto Top
ftp und dir sind mir durchaus ein Begriff, und auch die anderen Postings diesbzgl. habe ich gelesen, bloss hilft mir das bei meiner konkreten Problemstellung nicht weiter.

Ich versuch's mal mit Wget.
Trotzdem bin ich für Vorschläge natürlich weiter offen ... face-smile

thx,
kingofberus