Většina systémových administrátorů a dokonce i někteří standardní uživatelé preferují příkazový řádek pro své každodenní úkoly, jako je úprava a mazání souborů, vytváření a odstraňování uživatelů, hledání IP adresy atd. Jedním z důvodů je, že příkazový řádek je rychlejší a spotřebovává méně zdrojů. Další věcí, kterou uživatelé často dělají, je stahování souboru. Mohou to také udělat snadno a rychleji pomocí příkazového řádku. Wget a curl jsou nástroje příkazového řádku, které vám umožňují stahovat soubory z příkazového řádku.
V tomto příspěvku popíšeme, jak používat nástroje wget a curl ke stažení souboru na Ubuntu z příkazového řádku.
Poznámka :Postup popíšeme na Ubuntu 20.04 systém.
Stahování souborů pomocí Wget
Wget je nástroj příkazového řádku používaný pro stahování souborů z webu. Pomocí wget si můžete stáhnout jeden HTML soubor nebo celou webovou stránku. Podporuje stahování souborů pomocí protokolů HTTP, HTTPS a FTP. Je nainstalován na téměř všech operačních systémech Linux. Pokud jej však nemůžete ve svém systému najít nebo je omylem odstraněn, můžete jej nainstalovat následovně:
$ sudo apt install wget
Základní syntaxe příkazu wget je následující:
$ wget [option]… [URL]…
Stáhnout soubor z příkazového řádku
Chcete-li stáhnout soubor z příkazového řádku, jednoduše napište wget následuje URL souboru, který chcete stáhnout. Řekněme, že ke stažení „vnstat-2.6.tar.gz“ balíčku pro sledování síťového provozu z webové stránky by příkaz byl:
$ wget https://humdi.net/vnstat/vnstat-2.6.tar.gz
Wget začne stahovat soubor a uvidíte průběh. Soubor bude uložen do aktuálního adresáře vašeho terminálu.
Obnovení částečně staženého souboru
Pokud je stahování z nějakého důvodu zastaveno nebo jste jej zastavili ručně stisknutím Ctrl+C, můžete jej obnovit pomocí příkazu wget -c volba. Tato možnost vám umožňuje pokračovat v částečně staženém souboru tam, kde jste jej přestali.
$ wget -c <URL>
Vypnout podrobný výstup
Ve výchozím nastavení wget zobrazuje podrobný výstup zobrazující všechny podrobnosti procesu stahování. Pokud chcete, můžete tento výstup omezit pomocí wget -nv možnost.
$wget -nv <URL>
Tato možnost zobrazuje pouze základní informace o procesu stahování.
Chcete-li podrobný výstup úplně vypnout, použijte -q možnost:
$ wget -q <URL>
Stáhnout více souborů
Chcete-li stáhnout více souborů, zadejte wget následované adresami URL všech souborů.
$ wget <URL1> <URL2>
Příkaz wget stáhne oba soubory a uloží je do vašeho aktuálního adresáře terminálu.
Dalším způsobem stažení více souborů je použití wget -i volba. Řekněme, že potřebujete stáhnout velké množství souborů. Vše, co potřebujete, je vytvořit textový soubor a vypsat všechny adresy URL v tomto souboru (jedna adresa URL na řádek). Poté zadejte wget následuje -i a název souboru obsahujícího seznam adres URL:
$ wget -i <filename>
Poznámka :Ve výše uvedeném výstupu jsme použili -nv možnost vypnout podrobný výstup.
Stahování souborů pomocí Curl
Curl je nástroj příkazového řádku používaný pro stahování a odesílání souborů na nebo ze serveru. Podporuje více než 20 protokolů včetně FTP, HTTP, HTTPS, TFTP, IMAP, LDAP atd
Curl je nainstalován na téměř všech operačních systémech Linux. Pokud jej však nemůžete ve svém systému najít nebo je omylem odstraněn, můžete jej nainstalovat následovně:
$ sudo apt install curl
Základní syntaxe příkazu curl je následující:
$ curl [option]… [URL]…
Základní použití příkazu curl
Základní použití příkazu curl je stažení jednoho souboru nebo obsahu webové stránky. Řekněme, že ke stažení webové stránky „index.html“ bychom napsali curl následuje adresa URL webové stránky:
$ curl <URL>
Tento příkaz stáhne zadaný soubor do vašeho aktuálního adresáře.
Po spuštění výše uvedeného příkazu curl uvidíte obsah HTML zobrazený na obrazovce podobný následujícímu:
Uložte obsah stránky do souboru
Obsah stránky si můžete stáhnout a uložit do souboru namísto zobrazení na obrazovce. Chcete-li soubor uložit do systému, použijte příkaz curl -O nebo -o volba. -O volba uloží soubor se stejným názvem jako soubor ve vzdáleném umístění. Zatímco -o volba umožňuje uložit soubor pod jiným názvem.
Pomocí možnosti -O
Pomocí -O název souboru nemusíte zadávat. Uloží soubor do vašeho systému s názvem souboru ve vzdáleném umístění.
$ curl -O <URL>
Například příkaz níže uloží soubor s názvem „index.html“:
$ curl -O https://www.cisco.com/c/en/us/support/switches/index.html
Pomocí volby -o
Pomocí -o můžete zadat název souboru podle svého výběru.
$ curl -o filename <URL>
Například následující příkaz uloží soubor s názvem „switches.html“:
$ curl -o switches.html https://www.cisco.com/c/en/us/support/switches/index.html
Spustit curl potichu
Pokud nechcete během procesu stahování zvlnění zobrazovat žádný ukazatel průběhu nebo chybovou zprávu, můžete jej ztišit pomocí -s možnost takto:
$ curl -s <URL>
Stáhnout více souborů
Chcete-li stáhnout více souborů, zadejte curl následované adresami URL všech souborů:
$ curl -O [URL1] -O [URL2] -O [URL3]….
Tento příkaz uloží všechny soubory do vašeho aktuálního adresáře terminálu.
Pokud je potřeba stáhnout příliš mnoho adres URL, vytvořte textový soubor a uveďte v něm adresy URL.
Poté ke stažení všech adres URL uvedených v souboru použijte následující příkaz:
$ xargs -n 1 curl -O < filename
Poté můžete použít ls příkaz pro potvrzení, zda byly staženy všechny soubory.
Obnovení částečně staženého souboru
Pokud je stahování z nějakého důvodu zastaveno nebo jste jej zastavili ručně stisknutím Ctrl+C, můžete jej obnovit pomocí příkazu curl “-C – “ možnost. Tato možnost vám umožňuje pokračovat v částečně staženém souboru tam, kde jste jej přestali.
$ curl -C - <URL>
Jak wget, tak curl jsou bezplatné a open source nástroje příkazového řádku používané pro neinteraktivní stahování souborů. Pamatujte, že i když oba nástroje mohou stahovat soubory z webu; velmi se liší z hlediska funkcí. Můžete navštívit manuálové stránky wget a curl, kde najdete podrobný přehled toho, čeho jsou tyto nástroje schopny.