1 wget (World Wide Web get)
1.1 Die Philosophie: Der unermüdliche Datei-Sammler
wget folgt der Philosophie:
„Einmal gestartet, ziehe ich das durch.“ Bricht die Verbindung während eines Downloads ab, versucht wget standardmäßig so lange automatisch mit dem Server zu verbinden und den Download fortzusetzen, bis die Datei vollständig auf der Festplatte liegt. Zudem beherrscht es das rekursive Herunterladen, womit es ganze Verzeichnisstrukturen oder Webseiten spiegeln kann.
1.2 Die wichtigsten Parameter im Alltag:
- -c (continue):
Der absolute Lebensretter bei großen Dateien! Wenn ein Download (z. B. ein 4 GB Linux-ISO) bei 70 % abbricht, setzt wget -c den Download exakt an der abgebrochenen Stelle fort, statt wieder von vorne anzufangen. - -O (Großes O - Output Document):
Erlaubt es, der heruntergeladenen Datei direkt einen neuen Namen zu geben (Syntax: wget -O neuer_name.zip URL).
Vorsicht: Anders als bei curl speichert wget standardmäßig immer als Datei unter dem Originalnamen ab. Das große -O wird hier nur zum Umbenennen genutzt! - -b (background):
Schickt den Download sofort in den Hintergrund. wget schreibt den Fortschritt dann lautlos in eine Logdatei (wget-log), und du kannst das Terminal sofort für andere Arbeiten weiterbenutzen oder dich sogar vom Server abmelden. - -limit-rate=...:
Begrenzt die Download-Geschwindigkeit (z. B. --limit-rate=1m für maximal 1 Megabyte pro Sekunde). Perfekt, wenn man im Heimnetzwerk etwas herunterladen möchte, ohne die komplette Leitung für andere Familienmitglieder lahmzulegen.
1.3 Der absolute Renner: Ganze Webseiten spiegeln (wget -m)
Wenn ein Nutzer fragt, wie er eine Dokumentation oder eine alte Webseite komplett lokal sichern kann, empfiehlt man die "Spiegel-Option":
Die Parameter-Kombination kurz aufgeschlüsselt:
- -m (mirror):
Aktiviert die optimalen Einstellungen zum Spiegeln (rekursives Laden, Zeitstempel beachten, endlose Wiederholungen). - -k (convert-links):
Konvertiert die Links innerhalb der heruntergeladenen HTML-Seiten so, dass sie auf die lokalen Dateien zeigen. Erst dadurch kann man die Webseite offline ohne Internet im Browser durchklicken! - -E (adjust-extension):
Erzwingt die korrekte Dateiendung (z. B. .html), falls der Webserver diese verschleiert hat. - -p (page-requisites):
Lädt absolut alle Elemente herunter, die zur korrekten Darstellung der Seite nötig sind (CSS-Stylesheets, Bilder, Icons). - np / --no-parent (Nicht in übergeordnete Ordner wechseln):
Der wohl wichtigste Schutzmechanismus beim Spiegeln von Teilbereichen einer Webseite. Verhindert, dass wget Links folgt, die hierarchisch über dem Startverzeichnis liegen. Ohne diesen Parameter läuft man Gefahr, unabsichtlich die halbe Festplatte des Webservers oder die komplette Domain herunterzuladen, obwohl man nur ein bestimmtes Unterverzeichnis sichern wollte.
1.4 💡 wget vs. curl (Wann nimmt man was?)
QuoteDie goldene Faustregel:
- Nimm wget, wenn du Dateien, Ordnerstrukturen oder ganze Webseiten robust und stur herunterladen oder spiegeln willst.
- „Nimm curl, wenn du Daten von Servern abrufen oder flexibel an diese übermitteln willst – sei es, um APIs (wie bei Home Assistant) anzusprechen, Formulare und Dateien hochzuladen, HTTP-Header zu analysieren oder die Ausgabe direkt über Pipes an andere Werkzeuge (wie grep oder jq) weiterzureichen.“