Frage: Ich möchte FTP innerhalb eines Shell-Skripts ausführen. Ich möchte auch den Benutzernamen und das Passwort angeben, die für den Download der FTP-Datei im Shell-Skript selbst erforderlich sind. Können Sie mir erklären, wie man dieses Bath-FTP von einem Shell-Skript aus durchführt?
Antwort: Zum Herunter-/Hochladen von Dateien mit FTP im Stapelmodus können Sie entweder FTP-Scripting mit HERE-Dokument von der Befehlszeile aus verwenden oder FTP von einem Shell-Script aus aufrufen, wie unten beschrieben.
FTP-Scripting mit HERE-Dokument
$ ftp -in URL << SCRIPTEND user USERNAME PASSWORD binary cd PATH mget PATH SCRIPTEND
Im obigen FTP-Scripting:
- ftp :FTP-Befehl
- -i :Interaktive Eingabeaufforderung deaktivieren
- -n :Autologin deaktivieren
- Benutzer BENUTZERNAME PASSWORT :Melden Sie sich mit dem angegebenen Benutzernamen und Passwort an
- Binär :Legt den Binärmodus für die binäre Dateiübertragung fest
- cd PATH :Wechseln Sie das Verzeichnis auf dem Remote-Rechner
- mget PATH :Holt die angegebene Datei
- SCRIPTEND :Sowohl das Tag repräsentiert den Anfang als auch das Ende des HERE-Dokuments.
- HERE-Dokumente werden verwendet, um Eingaben für Befehle bereitzustellen, siehe Here-Dokument, um mehr darüber zu erfahren.
FTP-Scripting mit Shell-Script
Es folgt ein Beispiel für ein Shell-Skript, das eine Tar-Datei vom FTP-Server herunterlädt.
$ cat download.sh ftp -in mirrors.issp.co.th << SCRIPTEND user anonymous [email protected] binary cd cpan/authors/id/P/PM/PMQS/ mget Compress-Raw-Bzip2-2.027.tar.gz SCRIPTEND
Führen Sie dieses Shell-Skript aus, um die Dateien von FTP herunterzuladen.
$ sh download.sh $ ls download.sh Compress-Raw-Bzip2-2.027.tar.gz
Weitere FTP-Befehle finden Sie in unserem früheren Artikel FTP- und SFTP-Anfängerleitfaden mit 10 Beispielen