Příkaz cURL v Linuxu je výkonný nástroj pro přenos dat na nebo ze serveru pomocí různých protokolů, včetně HTTP, HTTPS, FTP a dalších. Běžně se používá pro automatizaci webových požadavků, testování API a stahování souborů z internetu. cURL je univerzální a zvládne širokou škálu úkolů, od jednoduchých stahování souborů až po komplexní vícedílné odesílání formulářů.
V této příručce prozkoumáme 30 praktických příkladů použití příkazu cURL v Linuxu. Tyto příklady se budou týkat běžných případů použití, jako je stahování souborů, odesílání dat do rozhraní API, zpracování autentizace a další, předvádějící flexibilitu a sílu cURL pro různé úkoly.
Syntaxe příkazu cURL
Než přistoupíme k demonstraci 30 příkladů s příkazem cURL, je dobré nejprve porozumět jeho syntaxi:
curl [options] [URL]
V této syntaxi:
- options: Toto jsou parametry, které upravují chování cURL.
- URL: Toto je adresa souboru nebo zdroje, se kterým chcete pracovat.
Možnosti příkazu cURL
cURL nabízí mnoho možností, které vám umožní přizpůsobit jeho chování. Zde jsou některé z nejčastěji používaných možností:
- -O: Stáhne soubor ze zadané adresy URL.
- -I: Načte hlavičku HTTP ze serveru.
- -u: Určuje pověření uživatele pro ověření serveru.
- -d: Odešle specifikovaná data v požadavku POST na server.
- -x: Určuje adresu proxy, která se má použít pro požadavky.
30 Příklady příkazu cURL v Linuxu
Nyní se pojďme ponořit do několika praktických příkladů použití příkazu cURL. U každého příkladu bude uvozeno vysvětlení, po kterém bude následovat ukázka výstupu.
Příklad 1: Načítání dat z adresy URL
Nejzákladnějším použitím cURL je načtení obsahu webové stránky. Můžete to udělat takto:
curl https://www.example.com
Tento příkaz načte obsah HTML webové stránky na adrese www.example.com.
Příklad 2: Stažení souboru
cURL lze také použít ke stahování souborů z internetu. Zde je příklad:
curl -O https://www.example.com/file.txt
Tento příkaz stáhne soubor file.txt z www.example.com a uloží jej do aktuálního adresáře.
Příklad 3: Odeslání požadavku POST
K odeslání požadavků POST na server můžete použít cURL. Zde je postup:
curl -d "param1=value1¶m2=value2" -X POST http://www.example.com
Tento příkaz odešle HTTP POST požadavek na www.example.com s daty param1=value1¶m2=value2.
Příklad 4: Načítání záhlaví HTTP
Pokud chcete načíst hlavičky HTTP ze serveru, můžete použít volbu -I. Zde je příklad:
curl -I https://www.example.com
Tento příkaz načte HTTP hlavičky z www.example.com.
Příklad 5: Použití proxy
Pokud potřebujete použít proxy, zadejte jej pomocí volby -x. Zde je postup:
curl -x http://proxy.example.com:8080 https://www.example.com
Tento příkaz odešle požadavek na adresu www.example.com prostřednictvím proxy na adrese proxy.example.com:8080.
Příklad 6: Odesílání souborů cookie
Soubory cookie můžete odeslat spolu s požadavkem pomocí volby -b. Zde je příklad:
curl -b "name=value" https://www.example.com
Tento příkaz odešle cookie s name=value na www.example.com.
Příklad 7: Odesílání User Agent
Webové stránky často využívají uživatelského agenta k poskytování obsahu vhodného pro prohlížeč klienta. Chcete-li odeslat uživatelského agenta s vaším požadavkem, použijte možnost -A:
curl -A "Mozilla/5.0" https://www.example.com
Tento příkaz odešle požadavek na www.example.com s uživatelským agentem nastaveným jako Mozilla/5.0.
Příklad 8: Následující přesměrování
Některé adresy URL přesměrovávají na jiné adresy URL. Chcete-li sledovat tato přesměrování, použijte volbu -L:
curl -L https://www.example.com
Tento příkaz následuje všechna přesměrování z www.example.com.
Příklad 9: Uložení výstupu do souboru
Chcete-li uložit výstup příkazu cURL do souboru, použijte volbu -o:
curl -o output.html https://www.example.com
Tento příkaz uloží výstup www.example.com do output.html.
Příklad 10: Nahrávání souborů pomocí FTP
cURL umí nahrávat soubory na server pomocí FTP. Zde je postup:
curl -T file.txt ftp://ftp.example.com --user username:password
Tento příkaz nahraje soubor.txt na ftp.example.com pomocí poskytnutého uživatelského jména a hesla.
Příklad 11: Obnovení stahování
Pokud dojde k přerušení stahování, můžete jej obnovit pomocí volby -C –:
curl -C - -O https://www.example.com/file.txt
Tento příkaz obnoví stahování souboru file.txt z www.example.com.
Příklad 12: Stahování více souborů
Chcete-li stáhnout více souborů, zadejte více adres URL:
curl -O https://www.example.com/file1.txt -O https://www.example.com/file2.txt
Tento příkaz stáhne soubor1.txt a soubor2.txt z www.example.com.
Příklad 13: Odeslání požadavku DELETE
Chcete-li odeslat požadavek DELETE, použijte volbu -X DELETE:
curl -X DELETE https://www.example.com/resource
Tento příkaz odešle požadavek DELETE na adresu URL www.example.com/resource.
Příklad 14: Podrobný výstup
Chcete-li získat podrobné informace o požadavku a odpovědi, použijte volbu -v:
curl -v https://www.example.com
Tento příkaz poskytuje podrobný výstup pro požadavek na www.example.com.
Příklad 15: Tichý režim
Chcete-li potlačit ukazatel průběhu a chybové zprávy, použijte volbu -s:
curl -s https://www.example.com
Tento příkaz načte obsah www.example.com v tichém režimu.
Příklad 16: Zobrazení průběhu stahování
Chcete-li zobrazit průběh stahování ve srozumitelnějším formátu, použijte volbu #:
curl -# -O https://www.example.com/file.txt
Tento příkaz stáhne soubor.txt z www.example.com a zobrazí průběh jako ukazatel průběhu.
Příklad 17: Odeslání dat JSON
Chcete-li odeslat data JSON v požadavku POST, použijte volbu -H k nastavení typu obsahu:
curl -d '{"key1":"value1", "key2":"value2"}' -H "Content-Type: application/json" -X POST https://www.example.com
Tento příkaz odešle požadavek POST s daty JSON na adresu www.example.com.
Příklad 18: Použití cURL s API
cURL se často používá k interakci s API. Zde je příklad:
curl -H "Authorization: Bearer YOUR_TOKEN" https://api.example.com
Tento příkaz odešle požadavek na https://api.example.com s autorizační hlavičkou.
Příklad 19: Stahování souborů na pozadí
Chcete-li stáhnout soubor na pozadí, použijte volbu -O se znakem ampersand na konci:
curl -O https://www.example.com/file.txt &
Tento příkaz stáhne soubor.txt z www.example.com na pozadí.
Příklad 20: Odesílání dat ze souboru
Chcete-li odeslat data ze souboru v požadavku POST, použijte symbol @:
curl -d @data.txt -X POST https://www.example.com
Tento příkaz odešle požadavek POST s daty z data.txt na www.example.com.
Příklad 21: Načítání obsahu z FTP serveru
cURL lze použít k načtení obsahu ze serveru FTP. Zde je postup:
curl ftp://ftp.example.com/file.txt --user username:password
Tento příkaz načte soubor.txt z ftp.example.com pomocí poskytnutého uživatelského jména a hesla.
Příklad 22: Načítání obsahu z webu chráněného heslem
Chcete-li načíst obsah z webu chráněného heslem, použijte volbu -u:
curl -u username:password https://www.example.com
Tento příkaz načte obsah z www.example.com pomocí poskytnutého uživatelského jména a hesla.
Příklad 23: Načítání obsahu z webu pomocí SSL
Chcete-li načíst obsah z webu pomocí protokolu SSL, použijte volbu -k:
curl -k https://www.example.com
Tento příkaz načte obsah z www.example.com, přičemž ignoruje všechna varování certifikátu SSL.
Příklad 24: Odeslání požadavku PUT
Chcete-li odeslat požadavek PUT, použijte volbu -X PUT:
curl -X PUT -d "data" https://www.example.com/resource
Tento příkaz odešle požadavek PUT s daty „data“ na www.example.com/resource.
Příklad 25: Načítání záhlaví odezvy
Chcete-li načíst pouze záhlaví odpovědí, použijte volbu -I:
curl -I https://www.example.com
Tento příkaz načte pouze hlavičky odpovědí z www.example.com.
Příklad 26: Načítání obsahu z webové stránky pomocí souborů cookie
Chcete-li načíst obsah z webu pomocí souborů cookie, použijte volbu -b:
curl -b cookies.txt https://www.example.com
Tento příkaz načte obsah z www.example.com pomocí cookies uložených v cookies.txt.
Příklad 27: Načítání obsahu z webu s vlastními záhlavími
Chcete-li načíst obsah z webu s vlastním záhlavím, použijte volbu -H:
curl -H "Custom-Header: Value" https://www.example.com
Příklad 28: Načítání obsahu z webu s časovým limitem
Chcete-li načíst obsah z webu s časovým limitem, použijte volbu -m:
curl -m 10 https://www.example.com
Tento příkaz načte obsah z www.example.com s časovým limitem 10 sekund.
Příklad 29: Načítání obsahu z webu v podrobném režimu
Chcete-li načíst obsah z webu v podrobném režimu, použijte volbu -v:
curl -v https://www.example.com
Tento příkaz načte obsah z www.example.com v podrobném režimu a zobrazí podrobné informace o požadavku a odpovědi.
Příklad 30: Načítání obsahu z webové stránky a zobrazení ukazatele průběhu
Chcete-li načíst obsah z webu a zobrazit ukazatel průběhu, použijte volbu -#:
curl -# https://www.example.com
Tento příkaz načte obsah z www.example.com a zobrazí ukazatel průběhu.
Závěr
Zvládnutí příkazu cURL pomocí těchto praktických příkladů může výrazně zlepšit vaši schopnost komunikovat s webovými službami, automatizovat přenosy dat a odstraňovat problémy se sítí. Pravidelné cvičení s různými možnostmi a příkazy cURL prohloubí vaše porozumění a umožní vám využít jeho plný potenciál ve vašich pracovních postupech Linuxu. Užijte si všestrannost a efektivitu, kterou cURL přináší do vaší sady nástrojů příkazového řádku.