GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Der ultimative Wget-Download-Leitfaden mit 15 fantastischen Beispielen

wget Dienstprogramm ist die beste Option, um Dateien aus dem Internet herunterzuladen. wget kann so ziemlich alle komplexen Download-Situationen bewältigen, einschließlich großer Dateidownloads, rekursiver Downloads, nicht interaktiver Downloads, mehrerer Dateidownloads usw.,

In diesem Artikel sehen wir uns die Verwendung von wget an für verschiedene Download-Szenarien anhand von 15 fantastischen wget-Beispielen.

1. Einzelne Datei mit wget herunterladen

Das folgende Beispiel lädt eine einzelne Datei aus dem Internet herunter und speichert sie im aktuellen Verzeichnis.

$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2

Während des Downloads wird ein Fortschrittsbalken mit folgenden Informationen angezeigt:

  • % des Downloadabschlusses (z. B. 31 % wie unten gezeigt)
  • Gesamtmenge der bisher heruntergeladenen Bytes (z. B. 1.213.592 Bytes wie unten gezeigt)
  • Aktuelle Downloadgeschwindigkeit (z. B. 68,2 K/s wie unten gezeigt)
  • Verbleibende Zeit zum Herunterladen (z. B. eta 34 Sekunden wie unten gezeigt)

Download läuft:

$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Saving to: `strx25-0.9.2.1.tar.bz2.1'

31% [=================> 1,213,592   68.2K/s  eta 34s

Download abgeschlossen:

$ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Saving to: `strx25-0.9.2.1.tar.bz2'

100%[======================>] 3,852,374   76.8K/s   in 55s    

2009-09-25 11:15:30 (68.7 KB/s) - `strx25-0.9.2.1.tar.bz2' saved [3852374/3852374]

2. Herunterladen und Speichern unter einem anderen Dateinamen mit wget -O

Standardmäßig wählt wget den Dateinamen aus dem letzten Wort nach dem letzten Schrägstrich, was möglicherweise nicht immer angemessen ist.

Falsch: Das folgende Beispiel lädt die Datei mit dem Namen herunter und speichert sie:download_script.php?src_id=7701

$ wget http://www.vim.org/scripts/download_script.php?src_id=7701

Auch wenn die heruntergeladene Datei im ZIP-Format vorliegt, wird sie wie unten gezeigt in der Datei gespeichert.

$ ls
download_script.php?src_id=7701

Richtig: Um dieses Problem zu beheben, können wir den Namen der Ausgabedatei mit der Option -O wie folgt angeben:

$ wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701

3. Geben Sie die Download-Geschwindigkeit / Download-Rate mit wget –limit-rate

an

Während der Ausführung von wget wird standardmäßig versucht, die volle mögliche Bandbreite zu belegen. Dies ist möglicherweise nicht akzeptabel, wenn Sie große Dateien auf Produktionsserver herunterladen. Um dies zu vermeiden, können wir die Download-Geschwindigkeit mit der –limit-rate wie unten gezeigt begrenzen.

Im folgenden Beispiel ist die Downloadgeschwindigkeit auf 200.000 beschränkt

$ wget --limit-rate=200k http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2

4. Setzen Sie den unvollständigen Download mit wget -c

fort

Starten Sie einen Download neu, der mittendrin gestoppt wurde, indem Sie die Option wget -c wie unten gezeigt verwenden.

$ wget -c http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2

Dies ist sehr hilfreich, wenn Sie einen sehr großen Dateidownload initiiert haben, der mittendrin unterbrochen wurde. Anstatt den gesamten Download erneut zu starten, können Sie den Download an der Stelle fortsetzen, an der er unterbrochen wurde, indem Sie die Option -c

verwenden

Hinweis: Wenn ein Download mittendrin gestoppt wird und Sie den Download ohne die Option -c erneut starten, hängt wget automatisch .1 an den Dateinamen an, da eine Datei mit dem vorherigen Namen bereits vorhanden ist. Wenn eine Datei mit .1 bereits vorhanden ist, wird die Datei mit .2 am Ende heruntergeladen.

5. Download im Hintergrund mit wget -b

Setzen Sie für einen großen Download den Download mit der wget-Option -b in den Hintergrund, wie unten gezeigt.

$ wget -b http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Continuing in background, pid 1984.
Output will be written to `wget-log'.

Es initiiert den Download und gibt Ihnen den Shell-Prompt zurück. Sie können den Status des Downloads jederzeit mit tail -f überprüfen, wie unten gezeigt.

$ tail -f wget-log
Saving to: `strx25-0.9.2.1.tar.bz2.4'

     0K .......... .......... .......... .......... ..........  1% 65.5K 57s
    50K .......... .......... .......... .......... ..........  2% 85.9K 49s
   100K .......... .......... .......... .......... ..........  3% 83.3K 47s
   150K .......... .......... .......... .......... ..........  5% 86.6K 45s
   200K .......... .......... .......... .......... ..........  6% 33.9K 56s
   250K .......... .......... .......... .......... ..........  7%  182M 46s
   300K .......... .......... .......... .......... ..........  9% 57.9K 47s

Lesen Sie auch unbedingt unseren vorherigen Multitail-Artikel zur effektiven Verwendung des tail-Befehls, um mehrere Dateien anzuzeigen.

6. Maskieren Sie den Benutzeragenten und zeigen Sie wget wie im Browser an, indem Sie wget –user-agent

verwenden

Einige Websites können Ihnen das Herunterladen ihrer Seite verbieten, indem sie angeben, dass der Benutzeragent kein Browser ist. Sie können also den Benutzeragenten maskieren, indem Sie –user-agent-Optionen verwenden und wget wie einen Browser anzeigen, wie unten gezeigt.

$ wget --user-agent="Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092416 Firefox/3.0.3" URL-TO-DOWNLOAD

7. Testen Sie die Download-URL mit wget –spider

Wenn Sie einen geplanten Download durchführen, sollten Sie überprüfen, ob der Download zur geplanten Zeit problemlos durchgeführt werden kann oder nicht. Kopieren Sie dazu die Linie genau aus dem Zeitplan und fügen Sie dann die Option –spider zur Überprüfung hinzu.

$ wget --spider DOWNLOAD-URL

Wenn die angegebene URL korrekt ist, lautet sie

$ wget --spider download-url
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Remote file exists and could contain further links,
but recursion is disabled -- not retrieving.

Dadurch wird sichergestellt, dass der Download zum geplanten Zeitpunkt erfolgreich ist. Aber wenn Sie eine falsche URL angegeben haben, erhalten Sie die folgende Fehlermeldung.

$ wget --spider download-url
Spider mode enabled. Check if remote file exists.
HTTP request sent, awaiting response... 404 Not Found
Remote file does not exist -- broken link!!!

Sie können die Spider-Option in folgenden Szenarien verwenden:

  • Überprüfen Sie dies, bevor Sie einen Download planen.
  • Überwachung, ob eine Website in bestimmten Abständen verfügbar ist oder nicht.
  • Überprüfen Sie eine Liste der Seiten Ihres Lesezeichens und finden Sie heraus, welche Seiten noch vorhanden sind.

8. Erhöhen Sie die Gesamtzahl der Wiederholungsversuche mit wget –tries

Wenn die Internetverbindung ein Problem hat und die Download-Datei groß ist, besteht die Möglichkeit, dass der Download fehlschlägt. Standardmäßig versucht wget 20 Mal, den Download erfolgreich durchzuführen.

Bei Bedarf können Sie die Wiederholungsversuche mit der Option –tries wie unten gezeigt erhöhen.

$ wget --tries=75 DOWNLOAD-URL

9. Laden Sie mehrere Dateien/URLs mit Wget -i

herunter

Speichern Sie zuerst alle Download-Dateien oder URLs in einer Textdatei als:

$ cat > download-file-list.txt
URL1
URL2
URL3
URL4

Geben Sie als nächstes die download-file-list.txt als Argument für wget an, indem Sie die Option -i verwenden, wie unten gezeigt.

$ wget -i download-file-list.txt

10. Laden Sie eine vollständige Website mit wget –mirror

herunter

Es folgt die Befehlszeile, die Sie ausführen möchten, wenn Sie eine vollständige Website herunterladen und für die lokale Anzeige verfügbar machen möchten.

$ wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
  • –mirror :Zum Spiegeln geeignete Optionen einschalten.
  • -p :lädt alle Dateien herunter, die notwendig sind, um eine gegebene HTML-Seite richtig anzuzeigen.
  • –convert-links :Konvertiert nach dem Download die Links im Dokument für die lokale Anzeige.
  • -P ./LOCAL-DIR :speichert alle Dateien und Verzeichnisse im angegebenen Verzeichnis.

11. Bestimmte Dateitypen beim Herunterladen mit wget –reject

ablehnen

Sie haben eine nützliche Website gefunden, möchten aber die Bilder nicht herunterladen, können Sie Folgendes angeben.

$ wget --reject=gif WEBSITE-TO-BE-DOWNLOADED

12. Protokollieren Sie Nachrichten in einer Protokolldatei anstelle von stderr. Verwenden Sie wget -o

Wenn Sie wollten, dass das Protokoll in eine Protokolldatei statt in das Terminal umgeleitet wird.

$ wget -o download.log DOWNLOAD-URL

13. Beenden Sie den Download, wenn er eine bestimmte Größe überschreitet, indem Sie wget -Q

verwenden

Wenn Sie den Download stoppen möchten, wenn er 5 MB überschreitet, können Sie die folgende wget-Befehlszeile verwenden.

$ wget -Q5m -i FILE-WHICH-HAS-URLS

Hinweis: Dieses Kontingent wird nicht wirksam, wenn Sie eine einzelne URL herunterladen. Unabhängig von der Kontingentgröße wird alles heruntergeladen, wenn Sie eine einzelne Datei angeben. Dieses Kontingent gilt nur für rekursive Downloads.

14. Laden Sie nur bestimmte Dateitypen mit wget -r -A

herunter

Sie können dies in folgenden Situationen verwenden:

  • Alle Bilder von einer Website herunterladen
  • Alle Videos von einer Website herunterladen
  • Alle PDF-Dateien von einer Website herunterladen
$ wget -r -A.pdf http://url-to-webpage-with-pdfs/

15. FTP-Download mit wget

Sie können wget verwenden, um einen FTP-Download durchzuführen, wie unten gezeigt.

Anonymer FTP-Download mit Wget

$ wget ftp-url

FTP-Download mit wget mit Benutzername und Passwort-Authentifizierung.

$ wget --ftp-user=USERNAME --ftp-password=PASSWORD DOWNLOAD-URL

Wenn Ihnen dieser Artikel gefallen hat, versehen Sie ihn bitte mit delicious oder Stumble.


Linux
  1. Linux-Grundlagen:So laden Sie Dateien auf der Shell mit Wget herunter

  2. Top 10 Anwendungsfälle des Wget-Befehls (mit Beispielen)

  3. Wget-Befehl in Linux mit Beispielen

  4. 5 Wget-Befehlsbeispiele zum Herunterladen von Dateien unter Linux.

  5. '&&' vs. '&' mit dem 'test'-Befehl in Bash

So laden Sie Dateien mit dem Wget-Befehl unter Linux herunter

Die ultimative Anleitung zur Bildbearbeitung mit ImageMagick

Sicherung von Synology NAS zu Glacier – Der ultimative Leitfaden

Das ultimative Tar Command Tutorial mit 10 praktischen Beispielen

HowTo:Das ultimative Logrotate-Befehls-Tutorial mit 10 Beispielen

Der ultimative Leitfaden für Anfänger zum Hosten statischer Websites mit Google Firebase (kostenlos)