FTP Automatisierung klappt nicht

Hallo Freunde.
Habe ein Problem mit einem ftp-Automatisierungsscript in Batch.
Das Script soll den Windows Befehlsparameter -s verwenden um sich automatisch auf meinem FTP Server anzumelden und eine Datei vom Server laden.
Die Anmeldung schlägt aber jedes Mal schief

@echo off
cd %userprofile%\Desktop

echo username >> auto.txt
echo passwort >> auto.txt
echo cd meinOrdner >> auto.txt
echo mget meineDatei >> auto.txt
echo quit >> auto.txt

ftp -i -s:auto.txt ftp.meinServer.de
exit

Kann mir mal einer sagen warum das nicht mehr geht? War doch vor ein paar Jahren kein Problem ich weiss es noch:p
Hab auch schon versucht statt "echo username >> auto.txt" "echo user username >> auto.txt" zu nehmen und habs auch schon mit 4 verschiedenen Servern versucht. Windows bietet den -s Parameter ja immer noch an deshalb sollte es doch eigentlich klappen habt ihr ne Idee?
 
Fehlermeldung vom Client und Server?

Kommen die Daten überhaupt bis zum Server?
Es gibt einige ISP die blockieren Port 21 bzw. eine passive Übertragung schlägt fehl.

Geht es im LAN?
 
Dazu kommt auch noch welche FTP-Version der Client spricht und welche der Server.
FTP ist nicht gleich FTP.
Es gibt durchaus erweiterte Versionen von FTP, einfach mal nach den entsprechenden RFCs suchen, führt zB unter Python ggf. zu kleinen Problemen.
Hier wäre auch wichtig zu erfahren in welchem Mode Server und Client operieren.

Gruß


Fluffy
 
est 1 mit "ftp -i -s:auto.txt ftp.meinServer.net"
--------------------------------------------------------------------
Verbindung mit <meinServer> wurde hergestellt.
220 Welcome to <meinServer>, FTP server standing by ...
504 Unknown command
Benutzer (<myUserName:mad:none)):
331 Hello <meinUserName , your FTP account password is required:

530 Login authentication failed
Anmeldung fehlgeschlagen.
ftp> mget testFile.txt
You aren't logged in
You aren't logged in
200 TYPE is now ASCII
Liste der Remotedateien kann nicht gefunden werden.
ftp> quit
221-Goodbye. You uploaded 0 and downloaded 0 kbytes.
221 Logout.
---------------------------------------------------------------------


Test 2 mit "ftp -v -i -s:auto.txt ftp.meinServer.net"
---------------------------------------------------------------------
Unknown command
Benutzer (<myServer:mad:none)):

Login authentication failed
Anmeldung fehlgeschlagen.
ftp> mget testFile.txt
You aren't logged in
You aren't logged in
Liste der Remotedateien kann nicht gefunden werden.
ftp> quit
----------------------------------------------------------------------

Test 3 mit "ftp -v -d -i -s:auto.txt ftp.meinServer.net"
----------------------------------------------------------------------
---> OPTS UTF8 ON
Unknown command
Benutzer (<meinServer:mad:none)):
---> USER myUserName

---> PASS myPassword
Login authentication failed
Anmeldung fehlgeschlagen.
ftp> mget myFile.txt
---> TYPE A
---> PORT 192,168,1,113,207,44
You aren't logged in
---> NLST myFile.txt
You aren't logged in
---> TYPE A
Liste der Remotedateien kann nicht gefunden werden.
ftp> quit


Also wie gesagt. Das oben genannte BatchFile wurde unter win10 in cmd ausgeführt. hab es u.a. mit vsftpd-Server, proftpd, filezilla-server und jetzt mit bplaced.net versucht....
kann mir nicht erklären warum das bei keinem funktioniert....
Wäre dankbar für Hilfe :)
 
Zuletzt bearbeitet:
Du kannst dich noch nichtmal einloggen.
Ich würde einfach versuchen erstmal per cli mittels ftp auf den Server zu kommen.
Wenn das nicht geht, wie Chakky schon fragte, hast du einen Ping?

BTW: wir haben nicht richtig gelesen ;)
-i erwartet eine Datei mit Ftp-BEFEHLEN
d.h.
echo username
echo pass
funktioniert nicht
du brauchst
echo "user username"
echo "pwd pass"

Abgesehen davon, wiso willst du das mit Batch machen?
Bei sowas würde ich schon darüber nachdenken, ggf. .Net oder ähnliches zu verwenden.
Gruß

Fluffy
 
Hallo

Du kannst dich noch nichtmal einloggen.

Haha ja das ist ja mein Problem:)

Ich würde einfach versuchen erstmal per cli mittels ftp auf den Server zu kommen.

Mit nem Client kann ich mich ohne Probleme anmelden. Selbst in der Eingabeaufforderung kein Problem. Nur wenn ichs automatisch machen will verweigert er mir den Zugang zu meinem Server

BTW: wir haben nicht richtig gelesen
-i erwartet eine Datei mit Ftp-BEFEHLEN
d.h.
echo username
echo pass
funktioniert nicht
du brauchst
echo "user username"
echo "pwd pass"

Das habe ich auch schon ausprobiert. also mit user username und pwd passwort. funktionierte auch nicht. Hab es dann umgestellt weil ich dachte dass ja beim Zzustandekommen der Verbindung kein Befehl mehr abgefragt wird sondern nur der Username und anschl. das Passwort. dann würde "user Username" als Username eingelesen werden... Anyways... beides funktioniert nicht.

Abgesehen davon, wiso willst du das mit Batch machen?

Haha ja klar giebts da elegantere Lösungen. Ist mehr so ne Prinzipsache. Ich seh das irgendwie nicht ein dass mann den -i Parameter wies aussieht nicht mehr verwenden kann. Vor ein paar Jahren war das kein Problem. Jetzt scheint es nirgends mehr zu funktionieren und ich hätte einfach gerne gewusst warum...:wink:
Außerdem fand ich es immer eine schnellzu implementierende Lösung um mit weniger versierten Usern Dateien einfach auszutauschen und fände es einfach schade wenn es nicht mehr geht. Schon rein aus traditionellen Gründen:D

Also Leute wer löst das Rätsel???
 
Zurück
Oben