hallo,
ich habe vor eine batch datei zu schreiben die automatisiert eine bestimmte datei auf meinen 2tpc schickt über das internet.
ich dachte mir es sei ganz simpel:
ftp
open bla.bla.net
user
pass
.....
nur egal wie ich es anstelle geht er bloss in den ftp modus und denkt garnicht daran sich irgendwohin zu verbinden. die batch datei rasselt die information wahrscheinlich in der millionstel sekunde schon runter, die cmd braucht um in den ftp modus zu gelangen...
kann mir da jemand weiterhelfen ???
Archiv Windows XP 25.916 Themen, 128.567 Beiträge
>>...die cmd braucht um in den ftp modus zu gelangen...
Wie kommst du auf die Idee das CMD einen "ftp-Modus" hat???
Du brauchst einen FTP-Client dem du die entsprechenden Parameter in der Komandozeile übergeben kannst.
Vielleicht wegen nur egal wie ich es anstelle geht er bloss in den ftp modus ... ?
Du brauchst einen FTP-Client dem du die entsprechenden Parameter in der Komandozeile übergeben kannst.
C:\>ftp -?
Überträgt Dateien zu und von einem Computer, der den TFTP-Dienst ausführt
(auch Daemon genannt).
FTP kann interaktiv verwendet werden.
FTP [-v] [-d] [-i] [-n] [-g] [-s:Dateiname] [-a] [-w:Fenstergröße] [-A]
[Host]
-v Unterdrückt das Anzeigen der Rückmeldungen von
Remoteservern.
-n Unterdrückt das automatische Anmelden nach dem ersten
Verbindungsaufbau.
-i Deaktiviert die interaktive Eingabe, während mehrere
Dateien übertragen werden.
-d Aktiviert Debugging.
-g Deaktiviert "Globbing" des Dateinamens (siehe auch GLOB-
Befehl).
-s:Dateiname Gibt eine Textdatei an, die FTP-Befehle enthält. Die
Befehle werden nach dem Starten von FTP automatisch
ausgeführt.
-a Verwendet eine beliebige lokale Schnittstelle, wenn
Datenverbindungen gebunden werden.
-A Meldet den Benutzer als "Anonymus" an.
-w:Puffergröße Überschreibt die Standardgröße des Übertragungspuffers
von 4096.
Host Gibt den Hostnamen oder die IP-Adresse des Remotehosts
an, zu dem eine Verbindung hergestellt wird.
Hinweis:
- Die Befehle "mget" und "mput" akzeptieren y/n/q für yes/no/quit.
- Verwenden Sie STRG+C zum Abbrechen von Befehlen.
mr.escape
Versuche es mal mit der eingabeumleitung, d.h. die befehle in eine extra datei packen (z.b. nach "ftp.in") und diese datei dann als eingabequelle an "ftp" senden.
Bsp.:
LCD
BYE
in "ftp.in" speichern und in der eingabeaufforderung oder *.BAT/*.CMD per
FTP<ftp.in
ausführen.
EDIT:
Oder gleich die option "-s:Dateiname" verwenden.
FTP -s:ftp.in
mr.escape
OK!
War mir glatt entgangen das es unter WinXP jetzt ein ftp.exe für die Kommandozeile gibt.
Aber deshalb hat CMD noch immer keinen "FTP-Modus".
FTP.exe ist ein eigenständiges Programm dem man Parameter übergeben kann.
U.A. den Namen einer Textdatei mit den FTP-Befehlen.
Das bedeutet die FTP-Befehle gehören nicht in die .bat sondern in die .txt Datei.
P.S.
>>...die batch datei rasselt die information wahrscheinlich in der millionstel sekunde schon runter, die cmd braucht um in den ftp modus zu gelangen..
Nein. Eine .bat wird immer Schritt für Schritt abgearbeitet. Erst wenn ein Befehl abgeschlossen ist wird der nächste begonnen.
Gab es auch schon vor XP.
Aber deshalb hat CMD noch immer keinen "FTP-Modus".
Ich glaube, dass ist jetzt eher haarspalterei, denn da es ein konsolen-programm ist, ist eine nutzung in der eingabeaufforderung bzw. mit stdin/stdout möglich und damit erscheint es für weniger detailverliebte als teil von CMD.EXE.
Nein. Eine .bat wird immer Schritt für Schritt abgearbeitet. Erst wenn ein Befehl abgeschlossen ist wird der nächste begonnen.
Solange man nicht "START" verwendet, gilt das vermutlich wohl. Wobei man dann wieder über "abgeschlossen" diskutieren kann.
mr.escape
Hallo,
also mit dem ftp im cmd meinte ich bloss dass wenn ich im cmd bin "ftp" eingeben und dann bin ich im ftp modus ...sobald ich ne datei .bat nenne startet ja bloss die eingabeaufforderung in der ich dann "ftp" eingebe um in den ftp-modus (oder wie auch immer^^) zu gelangen. Nur führt er eben keine weiteren kommenden befehle aus. Die Idee mit 2 Dateien hatte ich schon irgendwo im Internet gefunden, will es aber liebend gerne vollkommen unabhängig in einer datei haben.
@edit
eigentlich arbeitet eine bat befehl für befehl... im cmd von hand aus sieht das dann ja so aus :
ftp "enter"
open "enter"
adresse.com "enter"
aber als batch macht er das leider nicht so
Warum einfach, wenn es auch kompliziert geht! ;)
du kannst natürlich alles in einer datei speichern, aber wirklich schöner ist das nicht (beachte die dritte zeile):
set joschi=XYZ%RANDOM%.TXT
echo LCD>%joschi%
echo BYE>>%joschi%
ftp -s:%joschi%
del %joschi%
set joschi=
aber als batch macht er das leider nicht so
Doch, indem "ftp" ausgeführt und auf die beendigung gewartet wird. Erst danach geht es mit "open" weiter, was in diesem fall wenig sinn als batch-befehl ergibt.
mr.escape
achsooo jetzt kapier ich...
