ecology
Goto Top

Batch FTP upload bricht nach x Dateien ab

Hallo Zusammen

Ich habe eine Batch Datei erstellt, welche mir meine Bilder automatisch verkleinert und danach auf meinen Server per ftp hochlädt.
Es klappt auch alles bis auf die Tatsache, dass der upload nach ca. 26 Bilder (Total ca. 764KB) stockt und nach einer gewissen Zeit (Sekunden) abbricht.
Auf dem Server sind dann leider nicht alle Bilder vorhanden.

Hier der letzte Ausschnitt aus der Batch-Datei...

:hochladen
echo user #ich#> ftpcmd.dat
echo #password#>> ftpcmd.dat
echo hash>> ftpcmd.dat
echo bin>> ftpcmd.dat
echo cd /html/media/2014/>>ftpcmd.dat
echo MKD "%folder%">>ftpcmd.dat
echo cd /html/media/2014/"%folder%"/>>ftpcmd.dat
echo lcd "%folder%">>ftpcmd.dat
echo mput *jpg>> ftpcmd.dat
echo bye>> ftpcmd.dat
ftp -i -n -s:ftpcmd.dat #ip#

Wie kriege ich das hin, dass der den Befehl fertig ausführt.
(Habe Win7 und der Server ist ein Unix)
Vielen Dank für eure Hilfe
Gruss eco

Content-Key: 236091

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

Printed on: April 18, 2024 at 08:04 o'clock

Member: jsysde
jsysde Apr 21, 2014 at 20:34:27 (UTC)
Goto Top
N'Abend.

Funktioniert der Upload denn, wenn du die Daten mit nem FTP-Client hochlädst, in "einem Rutsch"?
Wenn du damit leben kannst, würde ich die ftp.exe von Windows durch WinSCP ersetzen...

Cheers,
jsysde
Member: ecology
ecology Apr 21, 2014 at 20:59:09 (UTC)
Goto Top
Hi. Ja mit dem FTP-Programm geht's in einem hoch. Was ist denn das WinSCP? Geht das dann auch mit den Befehlen?
Danke für deine Unterstützung...
Gruss eco
Member: kaiand1
kaiand1 Apr 21, 2014 at 23:58:24 (UTC)
Goto Top
Moin
Nun sftp kannst du auch per Console steuern steht alle im Handbuch..
Hast du denn mal bei deinem Server geguckt welche Meldung da kommt wenn dein Client sich verabschiedet?
Kann es sein das der 2 Verbindungen aufbaut und die 2te im Leerlauf ist beim Transfer und wegen Idel Time gekickt wird wodurch der Transfer abbricht?
Was sagt dein Client den als Meldung?
Lokal muss der ja dann ein Fehler mit Grund angeben wiso er nicht weiter Uploaden kann...
Und dann hast du auch den genauen Grund wiso weshalb warum und kannst es Beheben face-smile
Member: jsysde
Solution jsysde Apr 22, 2014, updated at Apr 23, 2014 at 19:59:17 (UTC)
Goto Top
Moin.
Zitat von @ecology:

Hi. Ja mit dem FTP-Programm geht's in einem hoch. Was ist denn das WinSCP? Geht das dann auch mit den Befehlen?
Danke für deine Unterstützung...
Gruss eco

WinSCP ist ein FTP-Client (der eben auch ssh, sftp etc. beherrscht), der sich per Command-Line scripten lässt:
http://winscp.net/eng/docs/commandline

Ich habe vor einiger Zeit auch mal mit den Unzulänglichkeiten der ftp.exe gekämpft (Upload von wenigen kb dauerte mitunter Stunden) und irgendwann aufgegeben bei der Fehlersuche. Da es "einfach funktionieren" sollte, habe ich eben WinSCP hergenommen und meine Batchfiles entsprechend umgebaut.

Cheers,
jsysde
Member: ecology
ecology Apr 22, 2014 at 09:49:59 (UTC)
Goto Top
Mahlzeit...
Ja, das mit der Fehlersuche ist genau so eine Sache.
Habe auf dem Server versucht einen gescheiten Logauszug zu finden. Leider steht da nix über einen Grund.
Dann auch auf dem PC steht in der Console nix, weshalb er da einfach stockt und nicht mehr weiter geht.

Ich denke ich werde mich wirklich mal an das WinSCP rantasten.

Gruss eco
Member: Pjordorf
Pjordorf Apr 22, 2014 at 18:06:16 (UTC)
Goto Top
Hallo,

Zitat von @ecology:
Dann auch auf dem PC steht in der Console nix,
Und ein FTP /? und geschaut was dieser dir an Debugging liefert hast du schon gemacht? Diese Ausgabe dann mal dir angeschaut in deinen geöffneten CMD Fenster oder das ganze auch mal in einer Datei dir ausgeben lassen?

In ein geöffnetes CMD Fenster:
ftp -d -i -n -s:ftp1.txt >> FTPDebug.log
liefert dir dann eine im aktuellen Ordner liegende FTPDebug.log Datei mit allem was du Wissen musst. Z.B.
open www.xxx-xxxxxxx.de
ftp> Verbindung mit www.xxx-xxxxxxx.de wurde hergestellt.
220 Microsoft FTP Service
ftp> USER XXXXXXXX_FTP
---> USER XXXXXXXX_FTP
331 Password required for XXXXXXXX_FTP.

---> PASS XXXXXXXXXXXX
230 User XXXXXXXX_FTP logged in.
ftp> hash
ftp> Hashmarkierungsdruck EIN FTP: (2048 Bytes/Hash).
ftp> bin
---> TYPE I
200 Type set to I.
ftp> lcd E:\YYYYY\FTPTest
ftp> Lokales Verzeichnis jetzt E:\YYYYY\FTPTest
ftp> ls
---> TYPE A
---> PORT 192,168,1,164,207,63
200 PORT command successful.
---> NLST
150 Opening ASCII mode data connection for file list.
anon_ftp
cgi-bin
error_docs
httpdocs
httpsdocs
statistics
web_users
226 Transfer complete.
FTP: 111 Bytes empfangen in 0,00Sekunden 111000,00KB/s
---> TYPE I
ftp> cd /httpdocs
---> CWD /httpdocs
250 CWD command successful.
ftp> ls
---> TYPE A
---> PORT 192,168,1,164,207,64
200 PORT command successful.
---> NLST
150 Opening ASCII mode data connection for file list.
2lang
cmsimple
content
css
img
index.php
picture_library
plugins
test
226 Transfer complete.
FTP: 139 Bytes empfangen in 0,00Sekunden 139000,00KB/s
---> TYPE I
ftp> cd content
---> CWD content
250 CWD command successful.
ftp> ls
---> TYPE A
---> PORT 192,168,1,164,207,65
200 PORT command successful.
---> NLST
150 Opening ASCII mode data connection for file list.
20080909133527.htm
20080909133624.htm
20080913092803.htm
20081203150622.htm
20081203150703.htm
content.htm
content.htm_
content.htm_sav
content.htm_sav2
Kopie von content.htm
226 Transfer complete.
FTP: 185 Bytes empfangen in 0,02Sekunden 11,56KB/s
---> TYPE I
ftp> get content.htm
---> PORT 192,168,1,164,207,66
200 PORT command successful.
---> RETR content.htm
150-Starting Transfer
150-Downloading
150-Checking file
150 Starting Transfer
###############226 Transfer Complete
FTP: 32375 Bytes empfangen in 0,000Sekunden 32375000,00KB/s
ftp> prompt
Interaktivmodus EIN .
ftp> lcd E:\YYYYY\FTPTest
Lokales Verzeichnis jetzt E:\YYYYY\FTPTest
ftp bye
---> QUIT
221

Die --> werden durch das Debug eingefügt....

Gruß,
Peter
Member: ecology
ecology Apr 22, 2014 at 19:23:46 (UTC)
Goto Top
Hallo Peter

Habe ich echt auch versucht...:

Das steht nun in der Konsole nach einigen Sekunden in denen nichts mehr hochgeladen wird.

Verbindung beendet durch Remotehost.
Drücken Sie eine beliebige Taste . . .

und das steht in der Log:

Verbindung mit xxxxxxxxxx wurde hergestellt.
220 (vsFTPd 2.3.2)
ftp> ---> user xxxxx
USER xxxxxx
331 Please specify the password.
---> 
PASS xxxxxx
230 Login successful.
ftp> Hashmarkierungsdruck EIN FTP: (2048 Bytes/Hash).
ftp> hash
---> bin
TYPE I
200 Switching to Binary mode.
ftp> ---> cd /html/media/2014/
CWD /html/media/2014/
250 Directory successfully changed.
ftp> ---> MKD "2014-Test"  
XMKD 2014-Test
257 "/html/media/2014/2014-Test" created  
ftp> ---> cd /html/media/2014/"2014-Test"/  
CWD /html/media/2014/2014-Test/
250 Directory successfully changed.
ftp> Lokales Verzeichnis jetzt D:\_Private Dokumente\Photos\_Temp\2014-Test\2014-Test
ftp> lcd "2014-Test"  
---> mput *.jpg
PORT 192,168,0,19,11,133
200 PORT command successful. Consider using PASV.
---> STOR IMG_7138.jpg
150 Ok to send data.
##############
226 Transfer complete.
FTP: 28712 Bytes gesendet in Sekunden KB/s
---> 0.0028712000.00PORT 192,168,0,19,11,134
200 PORT command successful. Consider using PASV.
---> STOR IMG_7140.jpg
150 Ok to send data.
#######das macht er genau 26mal#######
#######das macht er genau 26mal#######
#######das macht er genau 26mal#######
###############
226 Transfer complete.
FTP: 30958 Bytes gesendet in Sekunden KB/s
---> 0.0030958000.00PORT 192,168,0,19,11,160
200 PORT command successful. Consider using PASV.
---> STOR IMG_7173.jpg
ftp> bye

Ein echo prompt zeigt mir jedoch an, dass das Script alle Dateien (Anzahl 51, gesammt 1.4mb) erfasst und hochladen möchte...

Echt komisch...
Gruss eco
Member: ecology
ecology Apr 23, 2014 at 19:58:39 (UTC)
Goto Top
So... habe nun Winscp installiert und das script angepasst.
Und siehe da... das geht ab wie geschmiert... alle ausgewählten Dateien werden schön sauber hochgeladen.
SOOOOO soll das sein face-smile

Ich bedanke mich mal für die Ratschläge und vor allem für den Tip mit dem Winscp...

Grüsslichst eco