Frage: Die Intranet-Website meines Unternehmens hostet GB an Software-Tools und Anwendungen. Ich habe versucht, all diese über den wget-Befehl herunterzuladen und dennoch die gleiche Verzeichnisstruktur beibehalten (das Quellverzeichnis hat Tools in verschiedenen Kategorien organisiert, die ich gerne gleich behalte). Hier ist ein Beispiel für das Intranet-Webverzeichnis – http://intranet.company.com/software-tools/ . Die „Software-Tools“ sind das Verzeichnis, das viele Unterverzeichnisse und Dateien enthält. Ich möchte alle diese rekursiv mit dem Befehl wget herunterladen. Aber ich kann anscheinend nicht die richtigen Optionen für wget finden? Kann mir jemand von techglimpse helfen? – Naveen.
Antwort:
wget ist das Befehlszeilenprogramm zum Herunterladen von Dateien von einem entfernten Webserver. Sie können damit eine bestimmte Datei herunterladen, ein Verzeichnis durchlaufen (ich meine, rekursiv) und auch Dateien aus Unterverzeichnissen herunterladen.
wget rekursiver Download
# wget -r http://intranet.company.com/software-tools/
Der obige Befehl lädt alle Dateien und Verzeichnisse im Verzeichnis „Software-Tools“ herunter. Denken Sie jedoch daran, dass auch die Datei „index.html“ im Verzeichnis „software-tool“ und in Unterverzeichnissen heruntergeladen wird. Um dies zu vermeiden, müssen Sie die Ablehnungsoption mit dem Wert „index.html“ verwenden.
Wget-Ablehnungsoption
# wget -r --reject "index.html*" http://intranet.company.com/software-tools/
Hinweis: Die rekursive Option für wget funktioniert nur, wenn die Verzeichnisauflistung vom Webserver zugelassen wurde.
Beispielausgabe:
:::::::::::::::::::::::::: Removing intranet.company.com/software-tools/index.html?C=M;O=D since it should be rejected. ::::::::::::::::::::::::::
Wechseln Sie nicht zum übergeordneten Verzeichnis, während Sie rekursiv mit wget herunterladen
Wenn Sie nicht möchten, dass wget dem Link im Verzeichnisindex folgt und zum übergeordneten Verzeichnis aufsteigt, sollte die Option „–no-parent“ wie unten verwendet werden.
wget -r --no-parent --reject "index.html*" http://intranet.company.com/software-tools/
Weitere Informationen finden Sie bei man wget.