GNU/Linux >> Znalost Linux >  >> Linux

Průvodce stahováním Ultimate Wget s 15 úžasnými příklady

wget nástroj je nejlepší možností pro stahování souborů z internetu. wget si v podstatě dokáže poradit se všemi složitými situacemi stahování, včetně stahování velkých souborů, rekurzivního stahování, neinteraktivního stahování, stahování více souborů atd.,

V tomto článku si ukážeme, jak používat wget pro různé scénáře stahování pomocí 15 úžasných příkladů wget.

1. Stáhněte si jeden soubor pomocí wget

Následující příklad stáhne jeden soubor z internetu a uloží jej do aktuálního adresáře.

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

Během stahování se zobrazí ukazatel průběhu s následujícími informacemi:

  • % věku dokončení stahování (např. 31 %, jak je uvedeno níže)
  • Celkové množství dosud stažených bajtů (např. 1 213 592 bajtů, jak je uvedeno níže)
  • Aktuální rychlost stahování (např. 68,2 K/s, jak je uvedeno níže)
  • Zbývající čas do stažení (např. eta 34 sekund, jak je uvedeno níže)

Probíhá stahování:

$ 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

Stahování dokončeno:

$ 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. Stáhnout a uložit s jiným názvem souboru pomocí wget -O

Ve výchozím nastavení wget vybere název souboru z posledního slova za posledním lomítkem, což nemusí být vždy vhodné.

Špatně: Následující příklad stáhne a uloží soubor s názvem:download_script.php?src_id=7701

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

I když je stažený soubor ve formátu zip, bude uložen do souboru, jak je znázorněno níže.

$ ls
download_script.php?src_id=7701

Správně: Chcete-li tento problém opravit, můžeme zadat název výstupního souboru pomocí volby -O jako:

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

3. Určete rychlost stahování / rychlost stahování pomocí wget –limit-rate

Při provádění wget se ve výchozím nastavení pokusí zabrat plnou možnou šířku pásma. To nemusí být přijatelné, když stahujete velké soubory na produkční servery. Abychom tomu zabránili, můžeme omezit rychlost stahování pomocí –limit-rate, jak je uvedeno níže.

V následujícím příkladu je rychlost stahování omezena na 200 k

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

4. Pokračujte v neúplném stahování pomocí wget -c

Restartujte stahování, které se uprostřed zastavilo pomocí volby wget -c, jak je uvedeno níže.

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

To je velmi užitečné, když jste zahájili stahování velmi velkého souboru, které bylo uprostřed přerušeno. Namísto opětovného zahájení celého stahování můžete stahování zahájit od místa, kde bylo přerušeno, pomocí volby -c

Poznámka: Pokud se stahování zastaví uprostřed, když znovu spustíte stahování bez volby -c, wget k názvu souboru automaticky připojí .1, protože soubor s předchozím názvem již existuje. Pokud již existuje soubor s příponou .1, stáhne se soubor s příponou .2 na konci.

5. Stáhnout na pozadí pomocí wget -b

Pro velké stahování umístěte stahování na pozadí pomocí volby wget -b, jak je uvedeno níže.

$ 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'.

Zahájí stahování a vrátí vám výzvu shellu. Stav stahování můžete vždy zkontrolovat pomocí tail -f, jak je uvedeno níže.

$ 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

Nezapomeňte si také přečíst náš předchozí článek multitail o tom, jak efektivně používat příkaz tail k zobrazení více souborů.

6. Maskování uživatelského agenta a zobrazení wget jako prohlížeče pomocí wget –user-agent

Některé webové stránky vám mohou zakázat stažení jejich stránky tím, že identifikují, že uživatelský agent není prohlížeč. Takže můžete maskovat uživatelského agenta pomocí –user-agent options a zobrazit wget jako prohlížeč, jak je ukázáno níže.

$ 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. Otestujte adresu URL ke stažení pomocí wget –spider

Když se chystáte provést plánované stahování, měli byste zkontrolovat, zda stahování proběhne v pořádku nebo ne v naplánovanou dobu. Chcete-li tak učinit, zkopírujte řádek přesně z plánu a poté přidejte možnost –spider pro kontrolu.

$ wget --spider DOWNLOAD-URL

Pokud je zadaná adresa URL správná, zobrazí se

$ 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.

Tím je zajištěno, že stahování bude úspěšné v naplánovanou dobu. Ale když zadáte špatnou adresu URL, zobrazí se následující chyba.

$ 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!!!

Možnost pavouka můžete použít v následujících scénářích:

  • Před naplánováním stahování zkontrolujte.
  • Sledování dostupnosti webových stránek v určitých intervalech.
  • Zkontrolujte seznam stránek ze své záložky a zjistěte, které stránky stále existují.

8. Zvýšit celkový počet pokusů o opakování pomocí wget –tries

Pokud je problém s připojením k internetu a stahovaný soubor je velký, existuje možnost selhání stahování. Ve výchozím nastavení se wget zopakuje 20krát, aby bylo stahování úspěšné.

V případě potřeby můžete zvýšit počet pokusů o opakování pomocí možnosti –tries, jak je uvedeno níže.

$ wget --tries=75 DOWNLOAD-URL

9. Stáhnout více souborů / URL pomocí Wget -i

Nejprve uložte všechny stažené soubory nebo adresy URL do textového souboru jako:

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

Dále zadejte download-file-list.txt jako argument pro wget pomocí volby -i, jak je uvedeno níže.

$ wget -i download-file-list.txt

10. Stáhněte si celý web pomocí wget –mirror

Následuje příkazový řádek, který chcete spustit, když si chcete stáhnout celou webovou stránku a zpřístupnit ji pro místní prohlížení.

$ wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
  • –mirror :zapne možnosti vhodné pro zrcadlení.
  • -p :stáhne všechny soubory, které jsou nezbytné pro správné zobrazení dané HTML stránky.
  • –convert-links :po stažení převede odkazy v dokumentu pro místní prohlížení.
  • -P ./LOCAL-DIR :uloží všechny soubory a adresáře do určeného adresáře.

11. Odmítnout určité typy souborů při stahování pomocí wget –reject

Našli jste web, který je užitečný, ale nechcete stahovat obrázky, můžete zadat následující.

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

12. Protokolujte zprávy do souboru protokolu místo stderr Pomocí wget -o

Když jste chtěli, aby byl protokol přesměrován do souboru protokolu namísto terminálu.

$ wget -o download.log DOWNLOAD-URL

13. Ukončete stahování, když překročí určitou velikost pomocí wget -Q

Pokud chcete zastavit stahování, když překročí 5 MB, můžete použít následující příkazový řádek wget.

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

Poznámka: Tato kvóta se neprojeví, když stáhnete jednu adresu URL. To je bez ohledu na velikost kvóty, vše se stáhne, když zadáte jeden soubor. Tato kvóta platí pouze pro rekurzivní stahování.

14. Stáhnout pouze určité typy souborů pomocí wget -r -A

Můžete to použít v následujících situacích:

  • Stáhnout všechny obrázky z webových stránek
  • Stáhnout všechna videa z webových stránek
  • Stáhnout všechny soubory PDF z webové stránky
$ wget -r -A.pdf http://url-to-webpage-with-pdfs/

15. Stažení FTP pomocí wget

Ke stažení FTP můžete použít wget, jak je uvedeno níže.

Anonymní stahování FTP pomocí Wget

$ wget ftp-url

FTP stahování pomocí wget s ověřením uživatelského jména a hesla.

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

Pokud se vám tento článek líbil, uložte si jej do záložek s lahodným nebo klopýtnutím.


Linux
  1. Základy Linuxu:Jak stahovat soubory do prostředí pomocí Wget

  2. Příkaz Wget v Linuxu s příklady

  3. 5 příkladů příkazů Wget ke stažení souborů v Linuxu.

  1. 10 nejčastějších případů použití příkazu Wget (s příklady)

  2. Výukový program Ultimate Bash Array s 15 příklady

  3. '&&' vs. '&' s příkazem 'test' v Bash

  1. Jak používat příkaz wget s příklady

  2. Jak používat příkaz spánku Linux s příklady

  3. Příkaz Wget v Linuxu s příklady