Vielleicht ist Ihr X-Server abgestürzt. Oder du arbeitest an einem Shell-Skript. Oder Sie sind in einen kopflosen Server eingestiegen. Aus dem einen oder anderen Grund, wenn Sie eine Datei abrufen müssen und ein Webbrowser keine Option ist, sollten Sie sich wget anschauen. Wenn Sie die Linux-Shell sehr oft verwendet haben und mit Skripten oder Paketinstallationsprogrammen gearbeitet haben, besteht eine gute Chance, dass Sie wget in Aktion gesehen haben. Auf der einfachsten Ebene macht es genau das, was der Name andeutet und erhält eine Datei aus dem Web (oder FTP). Darunter ist jedoch eine clevere Funktionalität.

Die Grundlagen

Wie oben erwähnt, wird wget am häufigsten verwendet, um schnell eine Datei von irgendwo im Web zu erhalten.

 wget http://mydomain.com/file.zip 

Das würde einfach die Datei greifen und sie im aktuellen Verzeichnis speichern.

Wenn Sie unter einem anderen Dateinamen oder an einem anderen Speicherort speichern möchten, verwenden Sie das Flag -O.

 #Bedenken Sie, es ist ein Großbuchstabe "O" nicht Null oder klein "o" wget http://download.maketecheasier.com/Firefox_shortcut_keys.pdf -O Dokumente / ffkeys.pdf 

Möglicherweise laden Sie mehrere Dateien herunter. In diesem Fall möchten Sie möglicherweise einen Speicherort für alle Downloads angeben. Verwenden Sie einfach das Flag -P (oder -Verzeichnis-Präfix = LOCATION ), um anzugeben, wo sie hingehen.

Wie Sie sehen können, ist das eine Menge Output. Versuchen wir es mit der Option -q, um es zu bereinigen, sodass es besser für Skripte geeignet ist.

 wget -q http://mydomain.com/file.zip 

In ähnlicher Weise können Sie die Option -nv nur für eine kleine Ausgabe verwenden, aber nicht so viel wie die Standardeinstellung.

Schickes Zeug

Was ist, wenn Ihr Download fehlgeschlagen ist und Sie fortfahren möchten? Was ist, wenn die Datei bereits existiert und Sie sie nicht überschreiben möchten? Es gibt Optionen, um diese sowie einige andere Situationen zu behandeln.

Um einen fehlerhaften Download fortzusetzen, verwenden Sie das Flag -c (oder -continue )

Wenn Sie sicherstellen müssen, dass Ihr Befehl (oder Skript) keine vorhandenen Dateien überschreibt, verwenden Sie die Option -nc (für No-Clobber)

Es gibt Situationen, in denen Sie nicht sicher sein können, ob Dateinamen an beiden Enden die Groß- / Kleinschreibung beachten, aber das Flag "-ignore-case" dieses Problem aufhebt .

Um die Downloadrate zu begrenzen, verwenden Sie die Option -limit-rate = RATE, wie unten gezeigt.

 wget --limit-rate = 20000 http://ftp.us.debian.org/debian-cd/5.0.7/amd64/iso-cd/debian-507-amd64-netinst.iso 

FTP-Optionen

Wie bereits erwähnt, unterstützt wget auch FTP. Wenn Sie nur eine FTP-Site angeben, wie

 wget ftp://ftp.us.debian.org/debian-cd/5.0.7/amd64/iso-cd/debian-507-amd64-netinst.iso 

wget wird annehmen, dass Sie eine anonyme Anmeldung wünschen. Wenn das nicht der Fall ist, können Sie Dinge wie Benutzername und Passwort mit folgenden Flags manuell festlegen:

  • -ftp-user = USER Gibt den Benutzernamen für die Anmeldung an
  • -ftp-password = PASS Gibt das Passwort an
  • -no-passiv-ftp Deaktiviert den passiven Übertragungsmodus.

Sowie einige andere für fortgeschrittene Anwendungsfälle.

Timeouts, Wiederholungen und fehlgeschlagene Downloads

Schließlich enthält wget verschiedene Optionen für Serververbindungsprobleme und Timeouts. Nicht alle Fehler können natürlich behandelt werden, aber die folgenden Flags sollen alle helfen, mit Serverproblemen umzugehen:

  • -tries = NUMMER Geben Sie an, wie oft der Download wiederholt werden soll
  • -retry-connrefused Retry download, auch wenn die Verbindung vom Server abgelehnt wird.
  • -continue Setzt einen unvollständigen Download fort, der oben als -c verwendet wird
  • -timeout = SECONDS Globale Einstellung - wie lange vor Timeouts zu warten ist
  • -wait = SECONDS Wie lange zwischen erfolgreichen Downloads warten (wenn wiederholt)

Fazit

Für solch ein einfaches, einfaches, eingebautes Dienstprogramm hat wget eine überraschende Menge zu bieten. Wenn Sie das nächste Mal ein internetfähiges Shell-Skript schreiben oder die fehlende Treiberdatei auf Ihrem defekten Computer herunterladen müssen, geben Sie wget eine Chance. Wenn du interessante Geschichten darüber hast, wie wget dich aus dem Stau gebracht hat, lass es uns in den Kommentaren unten wissen.