Startseite >> Tipps und Tricks >> Linux

Linux-Tipp 5

Automatisierte FTP-Sitzungen

FTP-Sitzungen müssen nicht immer interaktiv ablaufen. Der Kommandozeilen-basierte FTP-Client ftp, der jeder größeren Linux-Distribution beiliegt, unterstützt auch eine Art Batch-Modus. Dazu schreibt man die Befehle, die später automatisiert ablaufen sollen, in eine normale Textdatei und übergibt diese anschließend dem Client. In der Praxis sieht dies beispielsweise wie folgt aus:

Zunächst wird mit

touch [Dateiname der Batch-Datei]

die betreffende Batchdatei erstellt. In diese werden anschließend die gewünschten FTP-Kommandos zeilenweise eingetragen.

Beispiel:
user BENUTZERNAME GEHEIM
cd incoming
bin
put ./test.jpg
bye

Durch die obige Befehlfolge meldet sich der Benutzer BENUTZERNAME mit dem Kennwort GEHEIM an dem FTP-Server an, wechselt in das Verzeichnis incoming auf dem entfernten Server, aktiviert den binären übertragungsmodus (bin), lädt die Datei test.jpg auf den FTP-Server hoch und beendet die FTP-Sitzung (bye).

Damit das Ganze funktioniert, muss dem FTP-Client jedoch noch mitgeteilt werden, dass er diese Batch-Datei verwenden soll. Dies erledigt ein Aufruf der Form:

cat [Dateiname der Batch-Datei] | ftp -n [Adresse des FTP-Servers]

Dass vor dem Einsatz einer solchen Batch-Datei zuvor die prinzipelle Lauffähigkeit der verwendeten Befehle (get, put, bin etc.) mit dem betreffenden FTP-Server getestet werden sollte, versteht sich von selbst.

Allerdings sollte man auch einen Nachteil dieser Lösung im Hinterkopf behalten: Die Batch-Datei beinhaltet das Kennwort im Klartext.

Weiterführende Literatur:

  • Die Online-Hilfe des FTP-Clients ftp (man ftp)
Picture

Linux