Hallo Leute,
ich suche eine Idee/Lösung usw. für folgenden Vorgang:
Ich möchte eine Datei per Script über das FTP-Protokoll auf den FT-Server kopieren, ohne das noch zusätzlich interaktive (manuelle) Eingaben notwendig sind.
etwa so:
ftp name:passwort@server
put file ziel/
bye
Habe mit dem lukemftp-Client experimentiert, aber eine brachbare Methode habe ich nicht gefunden.
Gruss, jo2
Datei kopieren per FTP ohne interaktive Anmeldung
Schau mal in die man-Page zum lukemftp rein. Da kannst Du sehen, dass ftp auch eine Datei ~/.netrc interpretiert. Wenn Du Verbindung zu einem bestimmten Host aufnimmst, kannst Du Default-User und -Password für diesen Host definieren. Ansonsten kannst Du ftp ein Here-Skript aus dem Skript lesen lassen.
Die .netrc:
Das Here.Skript:ftp macht ein Auto-Login, weil es meinserver in der .netrc findet. Danach führt es alle Kommandos aus, die es von stdin liest. An stdin wird mittels << das Hereskript geflanscht - fertig.
Allerdings ist zu beachten: Die .netrc darf nur für Dich lesbar sein - Passwort im Klartext! Und da ftp das PW auch im Klartext überträgt, ist scp/sftp mit Identity-File die bessere Lösung.
Jochen
Die .netrc:
Code: Select all
machine meinserver
login anton
password aus_tirol
Code: Select all
ftp meinserver <<EOF
bin
put datei
bye
EOF
Allerdings ist zu beachten: Die .netrc darf nur für Dich lesbar sein - Passwort im Klartext! Und da ftp das PW auch im Klartext überträgt, ist scp/sftp mit Identity-File die bessere Lösung.
Jochen
Die grösste Lüge der EDV? "Mal eben..."
ftp
Gruß
Eddie
Eddie