Příkaz Wget je jedním z nejpoužívanějších a nejužitečnějších nástrojů pro stahování souborů, balíčků a adresářů z webového serveru v operačních systémech Linux a Unix. Obvykle si můžete stáhnout jakékoli velké nebo malé soubory pomocí nástroje wget; wget neomezuje velikost souboru. Původně byl příkaz Wget zkrácen na kombinaci výrazů World Wide Web a Get. Tento šikovný nástroj byl vytvořen v rámci projektu GNU.
Může přistupovat k FTP, HTTP, HTTPS a dalším místním serverům pro stahování souborů v Linuxu. I při správné konfiguraci může příkaz wget přistupovat k serverům chráněným firewallem. Protože budeme hovořit o wget, tak pro vytvoření rozmanitosti budeme často používat termín ‘World Wide Web and Get‘ místo wget.
Wget Commands v systému Linux
S výchozím protokolem TCP může příkaz wget přistupovat, stahovat a ukládat soubory v systému souborů v systému Linux. Tento šikovný, lehký, ale výkonný nástroj je napsán v programovacím jazyce C, který dokáže snadno komunikovat mezi serverem a hostitelským strojem za účelem procházení dat. Podporuje omezení rychlosti stahování, pozastavení, obnovení, ukládání do mezipaměti, SSL a mnoho dalších, které pravděpodobně hledáte v programu stahování.
V tomto příspěvku uvidíme, jak nainstalovat příkaz wget na linuxové distribuce, a příklady nejpoužívanějších příkazů wget, které potřebujete znát, abyste mohli zlepšit své zkušenosti s Linuxem.
Nainstalujte příkaz wget v systému Linux
Příkaz „World Wide Web and Get“ je obvykle předinstalován u všech hlavních distribucí Linuxu. Pokud však při provádění příkazu wget narazíte na problémy, spusťte na svém shellu následující příkazy instalačního programu balíčku a nainstalujte nástroj wget v systému Linux. Proveďte prosím správný příkaz v shellu terminálu podle vaší distribuce.
Nainstalujte wget na Ubuntu/Debian Linux
$ sudo apt install wget
Získejte „World Wide Web and Get“ na Fedora/Red Hat Linux
$ sudo dnf install wget$ sudo yum install wget
Nainstalujte si nástroj Wget na SuSE Linux
$ zypper install wget
Získejte nástroj „World Wide Web and Get“ pro Arch Linux
$ sudo pacman -S wget
Jakmile získáte nástroj wget do svého systému, můžete nyní projít syntaxí wget, kterou jsem uvedl níže, abyste získali představu o tom, jak příkaz wget funguje v Linuxu.
wget urlwget [možnosti] URL
1. Stáhněte si jeden soubor pomocí wget
Protože jsme již prošli instalací a syntaxí příkazu Wget, můžeme nyní přímo přejít na příkaz wget, abychom věděli, jak vlastně funguje. Následující příkaz vám umožní stáhnout jeden soubor a uložit jej do systému souborů.
$ wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.5.tar.xz
2. Stáhnout soubor s jiným názvem a adresářem
Chcete-li uložit soubor nebo balíček v systému Linux s jiným názvem, než je původní, spusťte v shellu následující příkaz wget. Zde je část s file=file.tzx částí, kde přejmenujete soubor během stahování.
$ wget --output-document=file=file.tzx 'https://domain/foo-bar-xyz-long-file.tzx?key=xyz'$ wget -O /tmp/file.tzx \ 'https://domain/foo-bar-xyz-long-file.tzx?key=xyz'
3. Nastavit předponu adresáře
Protože pro snadné stahování používáme příkaz „World Wide Web and Get“, můžeme také snížit naši práci po stažení nastavením umístění předpony pro soubory a balíčky v systému Linux. Podívejte se prosím na níže uvedené příkazy, abyste věděli, jak nastavit adresář předpony pomocí příkazu wget.
wget -P /tmp/ urlwget -P /ubuntupit/ https://ur1/freebsd.isowget -P /ubuntupit/ https://ur2/opnbsd.iso
4. Přidání poznámek do souboru
Pokud potřebujete vložit zprávu do souboru, který stahujete, spusťte prosím následující příkaz „World Wide Web and Get“.
$ wget --output-file=log.txt https://url1/..$ wget -o download.log.txt https://url2/..
Nyní můžete vidět zprávu s níže uvedeným příkazem cat.
cat download.logmore download.log
Příkaz wget umožňuje uživatelům připojovat zprávy při stahování souboru ze serveru pro budoucí použití. I když jsme již viděli způsob, jak posílat zprávy, níže uvedený příkaz wget také pomůže, pokud vám předchozí nefunguje.
wget -o /root/wget-log.txt https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/md5sum.txt# cat /root/wget-log.txt5. Stáhnout více souborů
Pokud hledáte příkaz ke stažení více než jednoho souboru najednou prostřednictvím příkazu „World Wide Web and Get“, postupujte podle níže uvedeného vzoru příkazu.
$ wget http://www.ubuntupit.com/download/lsst.tar.gz ftp://ftp.freebsd.org/pub/sys.tar.gz ftp://ftp.redhat.com/pub /xyz-1rc-i386.rpm6. Číst adresy URL ze souboru
Čtení souborů ze souboru znamená zjištění, co se v souboru skutečně nachází. Vložte prosím URL do textového souboru a poté postupujte podle příkazu Vim a příkazu „World Wide Web and Get“ pro čtení souborů.
$ vi /tmp/download.txt$ wget -i /tmp/download.txt7. Obnovit stahování
Náhodně odpojí stahování nebo selhání sítě; vše je potřeba k obnovení stahování. Pro obnovení stahování můžete použít následující příkazy wget.
$ wget -c http://www.ubuntupit.com/download/lsst.tar.gz$ wget -c -i /tmp/download.txt8. Vynutit stažení wget
Pokud se potýkáte s problémy s připojením k serveru nebo webové adrese URL, spusťte prosím příkaz force pro připojení webu pomocí příkazu wget. Jak wget, tak
nohup
příkazy vám umožňují vynutit připojení webové adresy URL.$ wget -cb -o /tmp/download.log -i /tmp/download.txt$ nohup wget -c -o /tmp/download.log -i /tmp/download.txt &9. Omezte rychlost stahování
Pro stahování více souborů nebo balíčků pomocí příkazu „World Wide Web and Get“ přes omezené internetové připojení může být nutné omezit rychlost stahování. Proveďte prosím následující příkaz uvedený níže, abyste omezili rychlost stahování.
$ wget -c -o /tmp/susedvd.log --limit-rate=50k ftp://ftp.novell.com/pub/suse/dvd1.iso10. Získejte soubory z webů chráněných heslem
Už jsme viděli, jak používat přihlašovací údaje uživatele v příkazu wget, tento příkaz také popisuje, jak můžete přímo získat soubor chráněný heslem na webu. Obě níže uvedené metody jsou užitečné a praktické pro rychlý způsob stahování souborů z webu chráněného heslem.
$ wget --http-user=vivek --http-password=Secrete http://ubuntupit.com/jahid/csits.tar.gzDalším způsobem, jak použít ke stažení souboru s webem s nastaveným heslem, je vložit přihlašovací údaje do příkazu.
$ wget 'http://username:[email protected]_server/file.tar.gz$ ps aux11. Stáhněte si Mp3 a Pdf
Pokud máte v úmyslu stáhnout konkrétní typ souboru, jako jsou dokumenty mp3 nebo pdf, můžete provést následující příkaz uvedený níže. Zde je příkaz zobrazen pro FTP, ale bude fungovat i pro všechny ostatní veřejné domény.
$ wget ftp://somedom-url/pub/downloads/*.pdf$ wget ftp://somedom-url/pub/downloads/*.pdf12. Získejte soubor do standardního výstupu pomocí příkazu Wget
Následující příkaz „World Wide Web and Get“ vám umožní zobrazit standardní výstupní formát, jako je cesta k souboru, typ souboru, požadovaný čas, spotřeba šířky pásma atd. v shellu terminálu.
$ wget -q -O - 'https://url1/file.tar.xz' | tar -Jxzf - -C /tmp/data/13. Vytvořte zrcadlo webu pomocí příkazu Wget
Chcete-li vytvořit duplicitní zrcadlo webové stránky, můžete použít následující příkazy „World Wide Web and Get“. Oba
-m
a--mirror
syntaxe provedou stejnou úlohu, můžete si vybrat kterýkoli z následujících příkazů pro zrcadlení webu.
$ wget -m https://url/$ wget --mirror https://url/14. Najděte chyby HTTPS (TLS)
Pokud jste profesionální webový vývojář, který pracuje kolem certifikací SSL, tento příkaz „World Wide Web and Get“ vám velmi pomůže k vytvoření zprávy pro vaši zprávu TLS s chybami a zprávami.
$ wget --no-check-certificate \https://www.ubuntupit.com/robots.txt15. Povolte časová razítka v příkazu Wget
Chcete-li vytisknout časová razítka na výstupu ke stažení, můžete na svém terminálu spustit následující příkaz „World Wide Web and Get“. Tento příkaz vám sdělí čas serveru, když načítáte soubor.
wget --no-use-server-timestamps https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/CentOS-7-x86_64-NetInstall-1511.iso16. Změnit ukazatel průběhu
Pokud nejste spokojeni s tradičním stavovým pruhem stahování, který Linux zobrazuje v shellu při stahování souboru nebo balíčku, můžete ukazatel průběhu změnit pomocí následujícího příkazu wget.
wget --progress=dot https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/CentOS-7-x86_64-NetInstall-1511.iso17. Povolte částečné stahování v příkazu Wget
Chcete-li provést částečné stažení z webového serveru, můžete spustit následující příkaz wget. Po dokončení částečného stahování můžete změnit cíl a pokračovat ve stahování.
# wget -c https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/CentOS-7-x86_64-NetInstall-1511.iso18. Opakovat neúspěšné stahování v příkazu Wget
Následující příkazy ukazují, jak můžete vynutit opakování neúspěšného stahování v prostředí Linux pomocí příkazu wget. Tímto příkazem lze obvykle obnovit selhání sítě, časový limit serveru a další síťové chyby.
# wget -t 10 https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/CentOS-7-x86_64-NetInstall-1511.iso19. Stáhnout ze seznamu souborů URL
Pokud potřebujete stáhnout spoustu souborů pomocí příkazu wget jediným příkazem, můžete si webové adresy zapsat do textového souboru; pak použijte tento textový soubor s příkazem wget ke stažení ze seznamu. Tímto způsobem můžete ušetřit svůj efektivní čas a potíže se stahováním více souborů.
# cat to-download.txt# wget -i to-download.txt20. Zpoždění po neúspěšném stažení
Protože jsme již probrali, jak nastavit vynucené stahování a opakování stahování pomocí příkazu wget, můžeme nastavit časový interval, než příkaz provede další zásah na serveru. Následující příkazy ukazují, jak můžete nastavit časový interval 10 sekund po selhání stahování.
# time wget -w 10 -i to-download.txt21. Neinteraktivní stahování
V prostředí Linuxu můžete nastavit příkaz wget ve stylu démona, aby spouštěl příkaz na pozadí systému. Proveďte prosím následující příkaz, abyste pochopili, jak provést příkaz wget neinteraktivním způsobem.
wget -b https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/CentOS-7-x86_64-NetInstall-1511.iso22. Skrýt výstup v příkazu Wget
Chcete-li stáhnout soubor nebo balíček pomocí příkazu „World Wide Web and Get“ bez zobrazení výstupu v shellu terminálu, můžete použít následující příkaz. Tento příkaz vám umožní zadat příkaz ke stažení, poté v tichosti dokončí stahování a upozorní vás, když stahování skončí.
wget -q https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/md5sum.txt23. Informace o ladění v příkazu Wget
Tento praktický příkaz „World Wide Web and Get“ bude užitečný pro vývojáře, prostřednictvím tohoto příkazu můžete najít informace o ladění souboru. Následující příkaz vám také zašle základní informace, které byste mohli potřebovat.
# wget -d https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/md5sum.txt# wget -nv https://mirror.aarnet.edu.au/pub/ centos/7/isos/x86_64/md5sum.txt24. Zobrazit odezvu serveru
Pokud jste správce serveru, bude pro vás tento příkaz velmi užitečný. Nyní můžete použít jednoduchý příkaz „World Wide Web and Get“ ke kontrole doby odezvy webu nebo serveru. Ve skutečnosti to není totéž jako příkaz Ping; zde získáme skutečnou dobu odezvy serveru, nikoli dobu, kterou klient potřebuje k dosažení serveru přes internet.
wget -S https://www.ubuntupit.com/25. Nastavte časový limit v příkazu Wget
Problém s časovým limitem pro přístup na web nebo stažení souboru není vzácný problém. V Linuxu se příkaz wget obvykle neustále pokouší připojit k URL, pokud dojde k problému s časovým limitem. Abyste se vyhnuli spornému zásahu do URL, můžete provést následující příkaz wget, který stahování po určitém pokusu automaticky zruší.
# wget -T 30 https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/md5sum.txt26. Použijte přihlašovací údaje
Pokud je vaše adresa URL ke stažení chráněna uživatelským jménem a heslem, spusťte prosím následující příkaz, abyste poskytli přihlašovací údaje uživatele pro stahování pomocí příkazu wget.
# wget --user=username --ask-password http://localhost/file.txt27. Stáhnout soubor bez mezipaměti
Všichni víme, jak moc je užitečné uchopit soubory uložené v mezipaměti na místním počítači. Následující příkaz wget vám však pomůže stáhnout soubor neuložený v mezipaměti z webu.
# wget -d https://mirror.aarnet.edu.au/pub/centos/7/isos/x86_64/md5sum.txt# wget -d --no-cache https://mirror.aarnet.edu .au/pub/centos/7/isos/x86_64/md5sum.txt28. Stáhněte si celý web
Protože příkaz wget je mocný příkaz, umožňuje vám také stáhnout celý web a uložit jej do místního adresáře. Spusťte následující příkaz ke stažení celého webu.
$ wget --mirror -p --convert-links -P ./LOCAL-DIR WEBOVÁ-URL-URL29. Opustit konkrétní typy souborů pomocí příkazu Wget
Při stahování souborů pomocí příkazu wget možná budete muset z bezpečnostních důvodů přeskočit určitý typ souboru nebo se mu vyhnout. Následující příkaz ukazuje, jak můžete odmítnout soubory GIF při stahování pomocí příkazu wget.
$ wget --reject=gif WEBOVÁ STRÁNKA KE STAŽENÍ$ wget -o download.log DOWNLOAD-URL30. Ukončit stahování po určité velikosti
Někdy potřebujeme stáhnout soubory s určitým limitem velikosti souboru. Pro nastavení limitu velikosti souboru má wget vyhrazenou syntaxi, kterou můžete vidět níže. Například níže uvedený příkaz wget zastaví stahování, jakmile velikost souboru dosáhne 5 MB.
$ wget -Q5m -i FILE-WHICH-HAS-URLS31. Pouze Stáhnout Konkrétní typy souborů
Chcete-li stáhnout určitý typ souboru mezi hromadou souborů na serveru nebo webu, můžete provést následující příkaz wget uvedený níže. Například níže uvedený příkaz stáhne pouze soubory PDF, které jsme pomocí příkazu přiřadili.
$ wget -r -A.pdf http://url-to-webpage-with-pdfs/32. Stažení FTP pomocí příkazu Wget
Nejen prostřednictvím HTTPS, HTTP nebo veřejných serverů vám příkaz „World Wide Web and Get“ také umožňuje získat soubory z místního FTP serveru, který je hostován ve vaší místní síti.
$ wget ftp-urlPokud je pro přihlášení k serveru FTP nastaveno uživatelské jméno a heslo, postupujte podle níže uvedeného příkazu.
$ wget --ftp-user=UŽIVATELSKÉ JMÉNO --ftp-password=HESLO-ADRESA KE STAŽENÍ33. Zvýšit počet pokusů o opakování v příkazu Wget
Pokud se stahování nezdaří kvůli problému se sítí, selhání serveru nebo příliš dlouhému zpoždění pro komunikaci se serverem, můžete prodloužit dobu zpoždění a zvýšit počet pokusů o opakování pomocí příkazu wget uvedeného níže.
$ wget --tries=75 https://download.opensuse.org/distribution/leap/15.3/iso/openSUSE-Leap-15.3-DVD-x86_64-Current.iso34. Stáhněte a extrahujte soubor tar pomocí příkazu Wget
Někdy můžeme potřebovat stáhnout komprimovaný soubor a extrahovat soubor do adresáře. Chcete-li tento úkol usnadnit, můžete ve svém systému Linux použít následující příkaz.
# wget -q -O - http://wordpress.org/latest.tar.gz | tar -xzf - --strip-components=1 -C /var/www/html35. Nápověda a příručka
Všechny výše uvedené příkazy „World Wide Web and Get“ nejsou jediné příkazy, které budete potřebovat navždy. Tento příkaz můžete objevit více. Pokud máte zájem o příkaz wget, projděte si prosím manuál wget a stránky nápovědy.
$ man wget$ wget --helpKoncová slova
Stahování prostřednictvím příkazu „World Wide Web and Get“ v systému Linux je opravdu zábavné. Nejedná se však o tradiční downloader pro Linux. Nejčastěji se tento příkaz používá pro stahování komprimovaných souborů balíčků, nástrojů a dalších souborů souvisejících se softwarem prostřednictvím shellu terminálu v systému Linux. Celý příspěvek byl sérií příkazů wget, které vám mohou pomoci stát se výkonným uživatelem Linuxu.
Sdílejte jej prosím se svými přáteli a linuxovou komunitou, pokud považujete tento příspěvek za užitečný a informativní. Můžete také napsat své názory na tento příspěvek do sekce komentářů.
Možnosti příkazů a příklady příkazů Tee v Linuxu Jak používat příkaz obrazovky v systému Linux ke správě terminálůLinux