CMD: FTP Kommandos Skripten

Windows bring von Haus aus einen zugegeben rudimentären FTP-Client mit. Dennoch kann man diesen durchaus gebrauchen um einfache Aufgaben zu erledigen. Was viele nicht ahnen ist die Möglichkeit diesen über eine Befehlsdatei zu automatisieren. Dadurch ist es möglich den FTP-Client in Batchdateien einzubinden.

Hier erst mal eine Übersicht aller Kommandozeilenoptionen:

C:\>ftp.exe /?

Überträgt Dateien von und zu einem Computer auf dem ein FTP-Serverdienst ausgeführt wird
(auch Daemon genannt). FTP kann interaktiv verwendet werden.

FTP [-v] [-d] [-i] [-n] [-g] [-s:Dateiname] [-a] [-A] [-x:Sendepuffer] [-r:Empfangpuffer] [-b:Asynchronpuffer] [-w:Fenstergröße] [Host]

  -v               Unterdrückt das Anzeigen von Remoteserverantworten.
  -n               Unterdrückt automatische Anmeldung bei erster Verbindung.
  -i               Schaltet die interaktive Aufforderung während
                   der Übertragung von mehreren Dateien aus.
  -d               Aktiviert Debugging.
  -g               Deaktiviert Dateinamenglobbing (siehe Befehl GLOB).
  -s:Dateiname     Legt eine Textdatei fest, die FTP-Befehle enthält. Befehle
                   werden automatisch nach dem Start von FTP ausgeführt.
  -a               Verwendet beliebige lokale Schnittstelle bei der
                   Herstellung der Datenverbindung.
  -A               Als anonym anmelden.
  -x:Sendepuffer   Überschreibt die SO_SNDBUF-Standardgröße (8192).
  -r:Empfangpuffer Überschreibt die SO_RCVBUF-Standardgröße (8192).
  -b:Asynchronpuffer  Überschreibt den Standard Asynchronpuffer (3)
  -w:Fenstergröße  Überschreibt die Standardübertragungsgröße (65535).
  Host             Legt den Hostnamen bzw. die IP-Adresse des Remotehosts
                   fest, mit dem die Verbindung hergestellt wird.

Hinweise:
  Die Befehle - mget und mput erfordern y/n/q für yes/no/quit.
  - Verwenden Sie STRG+C, um Befehle abzubrechen.

C:\>

Uns interessiert hier hauptsächlich die Option -s:Dateiname

Hier ein paar Beispiele:

C:\>cd %tmp%
C:\Users\WundC\AppData\Local\Temp>notepad.exe ftp-commands.txt

Schreiben Sie Reihenfolge der FTP-Befehle in die Textdatei ftp-commands.txt
Hier:

open ftp.freebsd.org
get /pub/FreeBSD/README.TXT
quit

Speichern und Schließen. Und es kann losgehen:

C:\Users\WundC\AppData\Local\Temp>ftp -A -v -s:ftp-commands.txt
ftp> open ftp.freebsd.org
Anonyme Anmeldung erfolgreich für WundC@MASTERCHIEF
ftp> get /pub/FreeBSD/README.TXT
ftp> quit

Natürlich kann man auch mit put Dateien auf den FTP-Server übertragen.

 

Hier noch ein Beispiel wie man alles in eine einzelne Batchdatei packen kann.

set ftpAdress=ftp.freebsd.org
set ftpCommandsFile=%tmp%\ftp-commands.%random%.txt
(
echo open ftp.freebsd.org
echo get /pub/FreeBSD/README.TXT
echo quit
)>%ftpCommandsFile%

ftp -A -v -s:%ftpCommandsFile% %ftpAdress%

del %ftpCommandsFile%
pause

 

Veröffentlicht in CMD, Verschiedenes Getagged mit: , ,

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*