Příkazy *nix curl
a wget
jsou užitečné pro přístup k URL bez použití prohlížeče. Oba příkazy vám umožňují přenášet data ze síťového serveru pomocí curl
je z těchto dvou robustnější. Kterýkoli z nich můžete použít k automatizaci stahování z různých serverů.
Příkaz curl
Jak již bylo zmíněno, curl
umožňuje přenášet data ze síťového serveru, ale také umožňuje přesouvat data na síťový server. Kromě HTTP můžete používat další protokoly, včetně HTTPS, FTP, POP3, SMTP a Telnet. Administrátoři běžně spoléhají na curl
pro interakci s API pomocí metod DELETE, GET, POST a PUT, jak je vysvětleno zde.
Syntaxe pro curl
je na první pohled poměrně přímočará. Zde je příklad:
$ curl http://www.example.com/help.txt
možnosti curl
K syntaxi příkazu můžete zadat různé možnosti:
curl [options] [url]
Jsou to volby, které dělají curl
tak robustní. Níže jsou uvedeny některé z dostupných možností používaných s curl
a příklady jejich použití.
-a, --append
Při nahrávání souboru vám tato možnost umožňuje připojit k cílovému souboru místo jeho přepisování (FTP, SFTP).
$ curl --append file.txt ftp://ftp.example.com/file.txt
-connect-timeout
--connect-timeout
volba nastavuje maximální dobu v sekundách, po kterou se curl
lze použít k vytvoření připojení ke vzdálenému serveru. Tato možnost je užitečná, chcete-li zabránit příliš rychlému ukončení připojení a minimalizovat dobu, po kterou se má příkaz pokoušet o připojení.
$ curl --connect-timeout 600 http://www.example.com/
--dns-servers
Tato možnost umožňuje vypsat seznam serverů DNS curl
by měl používat místo výchozího nastavení systému. Tento seznam může být užitečný při řešení problémů s DNS nebo pokud potřebujete vyřešit adresu vůči konkrétnímu jmennému serveru.
$ curl --dns-servers 8.8.8.8 http://www.example.com/
--http3
Curru můžete konkrétně říct, aby používal protokol http3 pro připojení k hostiteli a portu s https URL. --http2 a --http1.1 fungují stejným způsobem a lze je použít k ověření webového serveru.
$ curl --http3 http://www.example.com:8080/
--výstup
Pokud potřebujete načíst soubor ze vzdáleného serveru prostřednictvím adresy URL, --output
je snadný způsob, jak uložit soubor lokálně.
$ curl http://www.example.com/help.txt --output file.txt
--progress-bar
Tato možnost zobrazuje průběh přenosu souboru v kombinaci s --output
možnost.
$ curl --progress-bar http://www.example.com/help.txt --output file.txt
--sslv2
Stejně jako u HTTP můžete curlu konkrétně říci, aby použil konkrétní možnost SSL pro příkaz, ke kterému se má připojit, a v tomto případě specifikujeme verzi 2. --ssl určuje, že je třeba použít SSL a --sslv3 určuje SSL verze 3. Poznámka:Sslv2 a sslv3 jsou správcem považovány za starší, i když jsou stále dostupné.
$ curl --sslv2 https://www.example.com/
--verbose
--verbose
možnost s curl
je užitečný pro ladění a zobrazení toho, co se děje během volání adresy URL.
$ curl --verbose http://www.example.com
Příkaz wget
Na rozdíl od curl
, wget
Příkaz slouží výhradně k získávání informací ze vzdáleného serveru. Ve výchozím nastavení jsou přijaté informace uloženy pod stejným názvem jako na poskytnuté adrese URL.
Zde je příklad základního wget
syntaxe:
$ wget http://www.example.com/help.txt
Možnosti wget
Jako curl
, můžete svému wget
dodat různé možnosti syntaxe příkazu:
wget [option] [url]
--dns-servers=ADRESY
Můžete určit jeden nebo více konkrétních serverů DNS, které se mají použít při použití wget
pro přístup ke vzdálenému serveru. Syntaxe se však liší, pokud jsou adresy opce a jmenného serveru spojeny znakem =.
$ wget --dns-servers=8.8.8.8 http://www.example.com
-O
Chcete-li uložit soubor s novým názvem při použití wget
, použijte --output-document
volba nebo jednodušeji -O
.
$ wget http://www.example.com/help.txt -O file.txt
--progress=type
Pomocí wget
, můžete zadat typ (tečka nebo pruh) k určení vizuálu ASCII ukazatele průběhu. Pokud typ není zadán, bude výchozí tečka.
$ wget --progress=dot http://www.example.com
Zabalit
curl
a wget
příkazy mohou být velmi užitečné při přidávání do skriptů pro automatické stahování RPM balíčků nebo jiných souborů. Tento příspěvek se dotýká pouze některých nejběžnějších funkcí toho, co tyto příkazy umí. Podívejte se na související manuálové stránky, kde najdete úplný seznam možností dostupných pro oba curl
a wget
.
[ Chcete si vyzkoušet své schopnosti správce systému? Proveďte hodnocení dovedností ještě dnes. ]