GNU/Linux >> Znalost Linux >  >> Linux

12 Užitečné příklady příkazů Wget v Linuxu

Příkaz Wget v Linuxu se používá ke stahování souborů z webu pomocí protokolů HTTP, HTTPS a FTP. Jinými slovy můžeme říci, že wget je neinteraktivní nástroj pro stahování příkazového řádku pro systémy Linux. Podporuje také stahování souborů přes HTTP proxy.

Zde neinteraktivní znamená, že může pracovat na pozadí, zatímco uživatel není přihlášen. Když provedeme minimální instalaci linuxových distribucí, příkaz wget není nainstalován, takže pro instalaci wget na linuxové distribuce spusťte

$ sudo yum install -y wget     // CentOS 7 / RHEL 7
$ sudo dnf install -y wget     // CentOS 8/ RHEL 8/ Rocky Linux 8
$ sudo apt install -y wget     // Ubuntu / Debian
$ sudo pacman -S wget          // Arch Linux
$ sudo zypper install wget     // OpenSUSE

V tomto tutoriálu probereme 12 užitečných příkladů příkazů wget. Tyto příklady vám pomohou začít používat příkaz wget jako profesionál. Pojďme se tedy hlouběji ponořit do příkladů.

1) Stažení jednoho souboru pomocí wget

Chcete-li stáhnout soubor pomocí příkazu wget, jednoduše zadejte příkaz wget následovaný absolutní cestou k souboru, příklad je uveden níže:

$ wget https://download.rockylinux.org/pub/rocky/8/isos/x86_64/Rocky-8.4-x86_64-minimal.iso

Tento příkaz stáhne soubor ISO Rocky Linux 8 do aktuálního pracovního adresáře uživatele.

2) Obnovit částečný stažený soubor (-c)

Existují některé scénáře, kdy začneme stahovat velký soubor, ale uprostřed se odpojí internet, takže pomocí volby ‚-c‘ v příkazu wget můžeme obnovit stahování z místa, kde došlo k odpojení. Příklad je uveden níže,

$ wget -c https://download.rockylinux.org/pub/rocky/8/isos/x86_64/Rocky-8.4-x86_64-minimal.iso

 3) Stáhnout soubory na pozadí (-b)

Ke stažení souborů na pozadí použijte volbu „-b“ v příkazu wget. Tato možnost je velmi užitečná, pokud je soubor příliš velký a chcete použít terminál pro jiné úkoly.

$ wget -b https://download.rockylinux.org/pub/rocky/8/isos/x86_64/Rocky-8.4-x86_64-dvd1.iso
Continuing in background, pid 4505.
Output will be written to ‘wget-log’.

Jak můžeme vidět výše, průběh stahování je zachycen v souboru „wget-log“ v aktuálním adresáři uživatele. Pro zobrazení stavu stahování použijte příkaz tail.

$ tail -f wget-log
2300K .......... .......... .......... .......... .......... 0% 48.1K 18h5m
2350K .......... .......... .......... .......... .......... 0% 53.7K 18h9m
2400K .......... .......... .......... .......... .......... 0% 52.1K 18h13m
2450K .......... .......... .......... .......... .......... 0% 58.3K 18h14m
2500K .......... .......... .......... .......... .......... 0% 63.6K 18h14m
2550K .......... .......... .......... .......... .......... 0% 63.4K 18h13m
2600K .......... .......... .......... .......... .......... 0% 72.8K 18h10m
2650K .......... .......... .......... .......... .......... 0% 59.8K 18h11m
2700K .......... .......... .......... .......... .......... 0% 52.8K 18h14m
2750K .......... .......... .......... .......... .......... 0% 58.4K 18h15m
2800K .......... .......... .......... .......... .......... 0% 58.2K 18h16m
2850K .......... .......... .......... .......... .......... 0% 52.2K 18h20m

4) Omezení rychlosti stahování v příkazu wget

Ve výchozím nastavení se příkaz wget pokusí použít plnou šířku pásma , ale může nastat případ, že používáte sdílený internet , takže pokud se pokusíte stáhnout velký soubor pomocí wget , může to zpomalit internet ostatních uživatelů. Této situaci lze předejít, pokud omezíte rychlost stahování pomocí možnosti „–limit-rate“.

$ wget --limit-rate=100k https://download.rockylinux.org/pub/rocky/8/isos/x86_64/Rocky-8.4-x86_64-dvd1.iso

Ve výše uvedeném příkazu wget jsme nastavili limit stahování na 100 kB.

 5) Stáhněte si více souborů pomocí wget

Pokud chcete stáhnout více souborů pomocí příkazu wget , pak nejprve vytvořte textový soubor a přidejte všechny adresy URL do tohoto textového souboru. Příklad je uveden níže:

$ cat download-list.txt
https://download.rockylinux.org/pub/rocky/8/isos/x86_64/Rocky-8.4-x86_64-dvd1.iso
https://releases.ubuntu.com/20.04.2.0/ubuntu-20.04.2.0-desktop-amd64.iso
https://download.opensuse.org/distribution/leap/15.3/iso/openSUSE-Leap-15.3-DVD-x86_64-Current.iso

Nyní spusťte níže uvedený příkaz,

$ wget -i download-list.txt

Výše uvedený příkaz wget začne postupně stahovat soubory ISO.

6) Zvýšit počet pokusů o opakování ve wget

Pokusy o opakování můžeme zvýšit pomocí možnosti „–tries“ ve wget. Ve výchozím nastavení se příkaz wget zopakuje 20krát, aby bylo stahování úspěšné.

Tato možnost je velmi užitečná, když máte problém s připojením k internetu a stahujete velký soubor.

$ wget --tries=75 https://download.opensuse.org/distribution/leap/15.3/iso/openSUSE-Leap-15.3-DVD-x86_64-Current.iso

Výše uvedený příkaz wget se pokusí stáhnout soubor maximálně 75krát.

7) Přesměrovat výstup příkazu wget do souboru protokolu

Výstup příkazu wget můžeme přesměrovat do souboru protokolu pomocí volby „-o“. Příklad je uveden níže,

$ wget -o download.log https://releases.ubuntu.com/20.04.2.0/ubuntu-20.04.2.0-desktop-amd64.iso

soubor download.log bude vytvořen  automaticky v aktuálním adresáři uživatele.

8) Stáhněte si kompletní webovou stránku pro místní prohlížení

Pomocí příkazu wget si můžeme stáhnout kompletní webovou stránku pro místní prohlížení, syntaxe je uvedena níže,

$ wget --mirror -p --convert-links -P ./<Local-Folder> website-URL

Kde

  • –mirror :zapněte 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řeveďte odkazy v dokumentu pro místní prohlížení.
  • -P ./Local-Folder :uložte všechny soubory a adresáře do určeného adresáře.

9) Odmítnout typy souborů během stahování

Když plánujete stáhnout celý web , můžeme přinutit příkaz wget, aby nestahoval obrázky pomocí –odmítnout možnost .

$ wget --reject=png <Website-To-Be-Downloaded>

10) Nastavení kvóty stahování ve wget

Můžeme donutit příkaz wget k ukončení stahování, když velikost stahování překročí určitou velikost. K nastavení kvóty stahování použijte volbu „-Q“ v příkazu wget.

$ wget -Q10m -i download-list.txt

Pamatujte, že kvóta nikdy neovlivní stahování jednoho souboru. Pokud tedy zadáte wget -Q10m ftp://wuarchive.wustl.edu/ls-lR.gz, budou staženy všechny soubory ls-lR.gz. Totéž platí, i když je na příkazovém řádku uvedeno několik adres URL. Kvóta však bude fungovat pouze při načítání buď rekurzivně, nebo ze vstupního souboru. Proto můžete bezpečně napsat „wget -Q10m -i download-list.txt“ stahování bude přerušeno, když bude překročena kvóta.

11) Stahování souboru z webu chráněného heslem

příkazy wget

$ wget --ftp-user=<user-name> --ftp-password=<password> Download-URL
or 
$ wget --user <user_name> --password <password> http://<url-path>/file_to_be_downloaded

Další způsob, jak zadat uživatelské jméno a heslo, je v samotné adrese URL.

Každá metoda odhalí vaše heslo každému, kdo se obtěžuje spustit „ps“. Abyste zabránili zobrazení hesel, uložte je do .wgetrc nebo .netrc a ujistěte se, že tyto soubory chráníte před ostatními uživateli pomocí „chmod“. Pokud jsou hesla opravdu důležitá, nenechávejte je ležet v těchto souborech, buď soubory upravte a smažte je poté, co wget zahájí stahování.

12) Stažení souboru přeskočením kontrol certifikátů

Existují některé scénáře, kdy chceme stáhnout soubor z portů https a chceme přeskočit kontroly certifikátů, takže to lze provést pomocí volby „–no-check-certificate“ v příkazu wget,

$ wget https://about.gitlab.com/ --no-check-certificate

Stažení Oracle Java pomocí příkazu wget z portálu https a přeskočení kontrol certifikátů

$ wget --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/12.0.1+12/69cfe15208a647278a19ef0990eea691/jdk-12.0.1_linux-x64_bin.rpm --no-check-certificate

Stahování souborů přes proxy

Existují situace, kdy náš systém běží za proxy serverem, takže v takových situacích musíme nejprve nastavit proxy a poté můžeme použít příkaz wget ke stažení souboru z internetu. Chcete-li nastavit proxy na příkazovém řádku, použijte následující proměnné a příkaz export

$ export http_proxy=http://<Your-Proxy-IP>:<Proxy-Port>
$ export https_proxy=http://<Your-Proxy-IP>:<Proxy-Port>
$ export ftp_proxy=http://<Your-Proxy-IP>:<Proxy-Port>

V případě, že je pro fungování serveru proxy vyžadováno uživatelské jméno a heslo, použijte následující

$ export http_proxy=http://<user-name>:<password>@<Your-Proxy-IP>:<Proxy-Port>
$ export https_proxy=http://<user-name>:<password>@<Your-Proxy-IP>:<Proxy-Port>
$ export ftp_proxy=http://<user-name>:<password>@<Your-Proxy-IP>:<Proxy-Port>

Další příklad 

Stáhněte a rozbalte soubor tar jediným příkazem wget  

Předpokládejme, že si chceme stáhnout nejnovější verzi tar souboru WordPress a chceme jej extrahovat do konkrétní složky, jako je /var/www/html, takže tento úkol provedeme pomocí níže uvedeného příkazu wget,

# wget -q -O - http://wordpress.org/latest.tar.gz | tar -xzf - --strip-components=1 -C /var/www/html

To je vše z tohoto tutoriálu, doufám, že jste zjistili, že tyto příklady příkazů wget jsou velmi informativní. Prosím, podělte se o své cenné zpětné vazby a komentáře v sekci komentářů níže.


Linux
  1. Příkaz Wget v Linuxu s příklady

  2. sa Příklady příkazů v Linuxu

  3. Příklady příkazů ac v Linuxu

  1. Příklady příkazů df v Linuxu

  2. du příklady příkazů v Linuxu

  3. Příklady příkazů wget v Linuxu

  1. 7 Příklady příkazů Linux df

  2. 8 Příklady příkazů Linux TR

  3. Příklady příkazů rm v Linuxu