Co je wget?
Wget je bezplatný nástroj příkazového řádku GNU používaný ke stahování souborů z internetu. Načítá soubory pomocí protokolů HTTP, HTTPS a FTP.
Slouží jako nástroj pro udržení nestabilních a pomalých síťových připojení. Pokud se během stahování vyskytne problém se sítí, tento užitečný software může obnovit načítání souborů, aniž by začínal od nuly.
Dalším důležitým aspektem je jeho schopnost rekurzivního stahování , pomocí kterého zrcadlí webové stránky . Přenáší části webových stránek sledováním odkazů a adresářové struktury, čímž vytváří místní verze webových stránek.
wget
příkaz je také vysoce flexibilní a lze jej použít v terminálech, skriptech a úlohách cron. Během stahování uživatel nemusí být aktivní ani přihlášený. Protože wget není interaktivní, může běžet nezávisle na pozadí.
Přečtěte si tento článek a naučte se používat některé z nejběžnějších wget
příkazy.
Jak zkontrolovat, zda je wget nainstalován?
Balíček wget je s největší pravděpodobností již ve vašem systému, protože je nyní předinstalován ve většině distribucí Linuxu.
Chcete-li to zkontrolovat, otevřete okno terminálu a zadejte:
wget
Pokud máte software wget, výstup vám řekne, že wget
příkazu chybí adresa URL, jak je znázorněno na obrázku níže:
Příkaz wget nenalezen
Pokud výstup zobrazuje wget command not found
musíte nástroj stáhnout a nainstalovat ručně. Níže naleznete instalační pokyny pro Ubuntu/Debian, CentOS a Windows.
Jak nainstalovat wget na Ubuntu/Debian?
Chcete-li nainstalovat wget na vydání Ubuntu nebo Debianu, použijte příkaz:
sudo apt-get install wget
Jak nainstalovat wget na CentOS/Fedora?
Chcete-li nainstalovat wget na CentOS nebo Fedoru, zadejte následující příkaz:
sudo yum install wget
Jak nainstalovat wget na Windows?
Instalace a konfigurace wget pro Windows:
- Stáhněte si wget pro Windows a nainstalujte balíček.
- Přidejte cestu wget bin k proměnným prostředí (volitelné). Tato konfigurace odstraňuje potřebu úplných cest a výrazně usnadňuje spouštění wget z příkazového řádku:
- Otevřete Start a vyhledejte „prostředí.“
- Vyberte Upravit systémové proměnné prostředí .
- Vyberte Pokročilé a klikněte na Proměnné prostředí tlačítko.
- Vyberte Cesta proměnná v části Systémové proměnné .
- Klikněte na tlačítko Upravit .
- V části Hodnota proměnné přidejte cestu k přihrádce wget adresář, kterému předchází středník (;) . Pokud je nainstalována ve výchozí cestě, přidejte
C:Program Files (x86)GnuWin32bin
.
- Otevřete příkazový řádek (cmd.exe) a spusťte
wget
příkazy.
Úvod do syntaxe wget
Syntaxe wget má následující vzor:
wget [option][URL]
Každá [možnost] má svůj dlouhý a krátký tvar, které jsou pohodlně zaměnitelné. Tento atribut určuje, co se má dělat s následující adresou URL.
[URL] je adresa souboru nebo adresáře, který si přejete stáhnout.
Příklady příkazů wget
Stáhnout soubor z webu
Ke stažení souboru z webu použijte:
wget [URL]
Chcete-li například nainstalovat Tomcat 9, musíte si nejprve stáhnout balíček pomocí wget
pomocí příkazu:
wget http://apache.cs.utah.edu/tomcat/tomcat-9/v9.0.20/bin/apache-tomcat-9.0.20.tar.gz
Stáhnout soubor a uložit pod konkrétním názvem
Chcete-li stáhnout soubor a uložit jej pod zadaným názvem, spusťte:
wget -O [file_name] [URL]
Příkaz wget vám umožňuje přejmenovat soubory před jejich stažením do počítače.
Můžete například chtít nainstalovat Terraform. Stažení balíčku a jeho přejmenování terraform.zip použijte následující příkaz:
wget -O terraform.zip https://releases.hashicorp.com/terraform/0.12.2/terraform_0.12.2_linux_amd64.zip
Stáhnout soubor do konkrétního adresáře
Ve výchozím nastavení wget stáhne soubor z adresáře, ve kterém se uživatel nachází. Chcete-li soubor uložit do jiného umístění, přidejte -P
možnost:
wget -P [wanted_directory] [URL]
Například při instalaci Gitu na Ubuntu si můžete stáhnout balíček v /temp adresář s příkazem:
wget -P /temp https://github.com/git/git/archive/master.zip
Nastavit rychlost stahování
Při stahování velkého souboru můžete nastavit rychlost stahování, takže nebude využívat celou dostupnou šířku pásma. Rychlost stahování je definována v kilobajtech (k ) a megabajty (m ). Použijte příkaz:
wget --limit-rate [wanted_speed] [URL]
Pokud například instalujete ovladače NVIDIA TESLA na Linux a chcete omezit rychlost stahování na 1 megabajt, použijte příkaz:
wget --limit-rate 1m http://us.download.nvidia.com/tesla/396.37/nvidia-diag-driver-local-repo-ubuntu1710-396.37_1.0-1_amd64.deb
Pokračovat ve stahování po přerušení
Namísto toho, abyste začínali od začátku, wget
může pokračovat ve stahování tam, kde se zastavilo před přerušením. Toto je užitečná funkce, pokud během stahování souboru dojde ke ztrátě připojení.
wget -c [URL]
Můžete například chtít nainstalovat Mumble Server na Linux a při stahování instalačního souboru náhle ztratíte připojení k internetu. Chcete-li pokračovat ve stahování, zadejte příkaz:
wget -c https://github.com/mumble-voip/mumble/releases/download/1.2.19/murmur-static_x86-1.2.19.tar.bz2
Stáhnout více souborů
wget
umožňuje stahování více souborů současně pomocí příkazu:
wget -i [file_name]
Chcete-li tak učinit, postupujte podle kroků uvedených níže:
1. Nejprve vytvořte a otevřete soubor pod názvem MultipleDownloads.txt (nebo název dle vašeho výběru) pomocí textového editoru. V tomto případě jsme použili Nano:
nano MultipleDownloads.txt
2. Jakmile jste v editoru, přidejte adresy URL balíčků, které chcete stáhnout, jednu na řádek.
3. Uložit a ukončit soubor.
4. Spusťte následující wget
příkaz v okně terminálu:
wget -i MultipleDownloads.txt
To vyzve wget ke stažení z každé adresy URL v textovém souboru.
Stáhnout webovou stránku (zrcadlová webová stránka)
S wget si můžete stáhnout celou webovou stránku z internetu pomocí -m
volba. Vyzve wget, aby vytvořil zrcadlo zadané webové stránky. Základní příkaz k tomu je:
wget -m [URL]
Například:
wget -m <a href="https://phoenixnap.com/" target="_blank" rel="noreferrer noopener">https://phoenixnap.com</a>
Stáhnout přes FTP
Chcete-li stáhnout přes FTP, zadejte uživatelské jméno a heslo FTP serveru následovaného adresou ftp :
wget --ftp-user=[ftp_username] --ftp-password=[ftp_password] ftp://...
Například:
wget --ftp-user=sofiftp --ftp-password=TopSecretPassword ftp://123.456.7890
Stahování na pozadí
Můžete stahovat na pozadí, což je praktická funkce při práci s velkým souborem:
wget -b [URL]
Můžete zkontrolovat stav stahování pomocí příkazu:
tail -f wget -log
Chcete-li stáhnout správce balíčků RPM na pozadí, zadejte:
wget -b http://some_website/sample_file.rpm
Zvýšit počet pokusů o opakování
Můžete nastavit, kolikrát se wget pokusí stáhnout soubor poté, co byl přerušen špatnou sítí pomocí:
wget --tries=[number_of_tries] [URL]
Ve výchozím nastavení je počet pokusů o opakování nastaven na 20 .
Můžete také nastavit číslo na nekonečno s hodnotami 0 nebo inf , jako v následujícím příkladu:
wget --tries=inf http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo
Přeskočit kontrolu certifikátu
Ve výchozím nastavení wget kontroluje, zda má server platný certifikát SSL/TLS. Pokud neidentifikuje autentický certifikát, odmítne stažení.
--no-check-certificate
Tato volba se používá k zamezení kontroly certifikačních autorit na certifikát serveru. Používejte jej však pouze v případě, že jste si jisti důvěryhodností webu nebo se nebojíte bezpečnostních problémů, které může způsobit.
wget --no-check-certificate [URL]
Pokud http://enteratonerisk.com má nedůvěryhodný certifikát, ale nepoškodí systém, můžete si jej stáhnout pomocí:
wget --no-check-certificate http://enteratonerisk.com
Změnit uživatelského agenta
Při stahování webové stránky wget v podstatě emuluje prohlížeč. V některých případech může výstup říkat nemáte oprávnění k přístupu serveru nebo že je připojení zakázané . Může to být způsobeno webem, který blokuje klientské prohlížeče, které mají specifického „User-Agent.“
„User-Agent“ je pole záhlaví, které prohlížeč odešle serveru, ke kterému chce získat přístup. Chcete-li tedy stahovat ze serveru, který se odmítá připojit, zkuste upravit uživatelského agenta.
Najděte online databázi všech uživatelských agentů, vyhledejte toho, který potřebujete, a spusťte příkaz:
wget --user-agent="User Agent Here" "[URL]"
nebo
wget -U "User Agent Here" "[URL]"
Chcete-li například emulovat Chrome (verze 74), změnili byste uživatelského agenta pomocí příkazu:
wget --user-agent=" Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36" "https://phoenixnap.com"
Poznámka: Ujistěte se, že vždy stahujete z důvěryhodného zdroje, protože wget
může dát pokyn ke stažení skriptu ze škodlivého zdroje. Tento a mnoho dalších nebezpečných příkazů popisujeme v našem článku 14 nebezpečných příkazů linuxového terminálu.