V tomto návode sa pozrieme na curl a wget, ako začať a čo je najdôležitejšie, rozdiely medzi nimi.
Čo je cURL?
cURL je bezplatný a otvorený zdrojový nástroj príkazového riadka, ktorý umožňuje používateľom prenášať údaje z jedného vzdialeného počítača na druhý s minimálnou alebo žiadnou interakciou s používateľom. Použitie CURL je rozšírené v zariadeniach, ako sú smerovače, tlačiarne, telefóny, tablety, prehrávače médií a ďalšie.
Podporuje sťahovanie a odosielanie pomocou protokolov, ako sú HTTP/HTTPS, FTP, SFTP, SCP, IMAP, LDAP/LDAPS, SMB/SMBS, TELNET, POP3, GOPHER a mnohých ďalších.
cURL tiež poskytuje servery proxy, obnovenie prenosov, autentifikáciu používateľov, certifikáty SSL a mnoho ďalších.
Čo je wget?
GNU Wget, bežne nazývaný wget, je bezplatný nástroj príkazového riadka na prenos súborov pomocou HTTP/HTTPS, FTP a FTPS. Poskytuje funkcie ako rekurzívne sťahovanie, riadenie šírky pásma, obnovuje prerušené prenosy, sťahovanie na pozadí, rekurzívne zrkadlové súbory a adresáre a mnoho ďalších.
Ako nainštalovať cURL a Wget?
cURL a wget sú obľúbené nástroje, ktoré sú už dostupné vo veľkých distribúciách Linuxu; Ak nemáte nainštalovaný žiadny z nástrojov, na inštaláciu použijete nasledujúce príkazy:
Debian/Ubuntu:
# nainštalovať cURLsudo apt-get nainštalovaťzvinúť
# nainštalovať wget
sudo apt-get nainštalovať wget
Arch / Manjaro:
# nainštalovať cURLsudopacman-Szvinúť
# nainštalovať wget
sudopacman-S wget
REHL/CentOS/Fedora:
# nainštalovať cURLsudo mňam nainštalovaťzvinúť
sudodnfInštaláciazvinúť
# nainštalovať wget
sudo mňam nainštalovať wget
sudodnfInštalácia wget
Ako používať cURL a Wget (príklady prípadov použitia)?
Aby ste pochopili podobnosti a rozdiely medzi cURL a wget, je dobré pozrieť sa na niekoľko príkladov:
Protokoly HTTP/HTTPS:
CURL aj wget podporujú protokoly HTTP a HTTPS. Ak teda stiahneme webovú stránku, ako je linuxhint.com:
zvinutie https://linuxhint.com-alebolinuxhint.htmlzvinutie https://linuxhint.com-alebolinuxhint.html
%Celkom%Prijaté%Xferd Priemerná rýchlosť Čas Čas Čas Aktuálny
Načítať Odovzdať Celková útrata Ľavá rýchlosť
100256 tis0256 tis0 0166 tis0-: -: -0: 00: 01-:-:-166 tis
Štandardne cURL vytlačí obsah webového zdroja v termináli. Na presmerovanie výstupu do súboru používame príznak -o.
Pre wget platí nasledujúce:
wgethttps://linuxhint.com--2021-06-2005:09:Štyri, päť- https://linuxhint.com/
Riešenie linuxhint.com(linuxhint.com)... 104.21.58.234, 172.67.209.252,2606:4700:3033::6815: 3aea, ...
Pripojenie k linuxhint.com(linuxhint.com)|104,21,58,234|:443... pripojené.
HTTP požiadavka odoslaná, čaká sa na odpoveď ...200OK
Dĺžka: nešpecifikovaná[text/html]
Ukladá sa do: „index.html“
index.html
[ <=> ]256,25 kB 506 kB/sv0,5 s
2021-06-dvadsať05:09:46 (506KB/s)- „index.html“ je uložený[262396]
Wget na druhej strane uloží požadovaný zdroj do súboru.
Je dobré poznamenať, že oba nástroje si zdroj stiahnu. Podrobnosti o dvoch súboroch zobrazujú obidve veľkosti súborov.
$ls -tenindex.html linuxhint.html-rw-rw-r-- 1linuxhint linuxhint262396Júna19 pätnásť:päťdesiatindex.html
-rw-rw-r-- 1linuxhint linuxhint262396Júnadvadsať05:07 linuxhint.html
Protokol FTP:
CURL aj wget podporujú sťahovanie do protokolov FTP. CURL však podporuje nahrávanie na ftp.
Na stiahnutie súborov zo servera FTP pomocou wget použite nasledujúci príkaz:
wget -užívateľ= debian-heslo= 'Debian' ftp://192.168.0.112/backup.zstwget -užívateľ= debian-heslo='debian'ftp://192.168.0.112/backup.zst
--2021-06-2005:29: 06- ftp://192.168.0.112/backup.zst
=>„Backup.zst“
Pripojenie k 192.168.0.112:dvadsaťjeden... pripojené.
Prihlasovaniev akodebian ... Prihlásenýv!
==>SYST ... hotovo. ==>PWD ... hotovo.
==>TYP I ... hotovo. ==>CWD nie je potrebný.
==>SIZE backup.zst ... hotovo.
==>PASV ... hotovo. ==>RETR backup.zst ... hotovo.
backup.zst
[ <=> ] 0--.- KB/sv0 s
2021-06-dvadsať05:29: 06(0,00B/s)- „backup.zst“ je uložený[0]
Pomocou zvlnenia pridajte-uoznačiť ako:
zvinúť-udebian: debian 'ftp://192.168.0.112/backup.zst '-alebobackup.zst
zvinúť-udebian: debian'ftp://192.168.0.112/backup.zst' -alebobackup.zst
%Celkom%Prijaté%Xferd Priemerná rýchlosť Čas Čas Čas Aktuálny
Načítať Odovzdať Celková útrata Ľavá rýchlosť
0 0 0 0 0 0 0 0-: -: - -: -: - -: -: - -0
Ak chcete nahrať asúbordoftpso zvlnením používame-Tmožnosť ako:
zvinúť-udebian: debian-Tbackup1.zst ftp://192.168.0.112/ftp/
Zaistite, aby adresár existoval a aby naň mal používateľ povolenia na zápis.
POZNÁMKA: Hoci cURL podporuje širokú škálu protokolov, neposkytuje rekurzívne sťahovanie. Na druhej strane, Wget podporuje rekurzívne sťahovanie pomocou možnosti –recursive, ako to ponúkajú protokoly HTTP/HTTPS a FTP/FTPS.
Podobnosti medzi wget a cURL
Teraz k čerešničke na torte:
- Oba nástroje podporujú štandardné protokoly ako HTTP, HTTPS, FTP, FTPS.
- Oba nástroje sťahujú súbory z internetu.
- Oba nástroje podporujú súbory cookie HTTP.
- Oba nástroje podporujú výstup do súboru.
- Voľne aj aktívne vyvíjané nástroje.
- Oba nástroje podporujú obnovenie prenosov.
- Oba nástroje podporujú HTTP POST.
Rozdiely medzi wget a cURL
Tu sú niektoré rozdiely medzi zvlnením a wgetom:
- Wget je jednoduchý nástroj na prenos, zatiaľ čo curl ponúka oveľa viac.
- Curl poskytuje knižnicu libcurl, ktorú je možné rozšíriť do aplikácií GUI. Wget je na druhej strane jednoduchý nástroj príkazového riadka.
- Wget podporuje menej protokolov v porovnaní s cURL.
- Rekurzívne sťahovanie nie je v curl podporované.
- Wget je natívne dostupný v systémoch Linux, zatiaľ čo cURL je ľahko dostupný v systémoch Windows.
- cURL podporuje viac paralelných prenosov.
- cURL vykonáva dekompresie HTTP kódované prenosom, zatiaľ čo wget nie.
- cURL podporuje obojsmerný HTTP, zatiaľ čo wget ponúka obyčajný HTTP POST.
- cURL podporuje viac spôsobov autentifikácie HTTP v porovnaní s wgetom.
- Wget nepodporuje SOCKS.
- Wget vyžaduje nainštalovaný gnulib.
- Na rozdiel od curl sú funkcie ako cookies, časové pečiatky a presmerovania sledovania v programe wget predvolene povolené. cURL vyžaduje, aby bol každý výslovne špecifikovaný.
Záver
Tento tutoriál sa zameral na podobnosti a rozdiely medzi cURL. Aj keď sa môže zdať, že cURL je vynikajúcou voľbou, existujú prípady, keď je wget najlepšou voľbou.
Moja rada je, aby ste si vybrali, čo vám vyhovuje.