Hallo @shiro
Wie sieht ein Zugriff über FTPS aus? Ist $ lftp der richtige Ansatz?
Ob der WebServer des Service Providers "ftps" unterstützt, kann man leicht feststellen, wie die Antwort auf einen ftps-Verbindungsaufbau ausschaut.
Der ftps-Aufbau bei All-Inkl.com (kasserver.de) (nur!) funktioniert so:
# Variablen für FTP-Transfer strWebLogIn="kasserver.com" strWebUser="username" strWebPassword="password" # FTP-Verbindung aufbauen # Hier würde mit lftp ftps:// versucht, eine implizite FTPS Verbindung (Port 990) aufzubauen; dies ist nicht möglich! Man muss ftp:// verwenden und im Anschluss zu einer expliziten FTPS Verbindung wechseln. lftp ftp://"$strWebUser.$strWebLogIn" -u "$strWebUser","$strWebPassword" # kein BLANK zulässig zwischen User und Password! set ftp:ssl-force true # ftps setzen set ftp:ssl-protect-data true
Dann habe ich einen FTP-Prompt lftp username@username.kasserver.com:/> und erhalte nach dem Konsolen-Befehl ls den Verzeichnisinhalt.
Nach dieser Anleitung (Suchstring put wp) kann ich den put-Befehl in der Konsole absetzen und die Datei wird an die richtige Stelle übertragen:
put "/localPath/localFile.html" -o "onlinePath/HowToMap/onlineFile.html"
Und so funktioniert der put-Befehl im BASH-Scrpt:
lftp ftp://"$strWebUser.$strWebLogIn" -u "$strWebUser","$strWebPassword" << EOF # kein BLANK zulässig zwischen User und Password! set ftp:ssl-force true # ftps setzen set ftp:ssl-protect-data true put "$strPathLocale/$strFileONline" -o "$strWebDir$strFileONline" bye EOF
Danke, Michael