Kakšna je razlika med wget in curl?

What Is Difference Between Wget Vs Curl



Pogosto moramo prenesti datoteke z oddaljenih strežnikov na naš lokalni računalnik. Na grafičnem namizju lahko uporabimo brskalnik z grafičnim vmesnikom in kliknemo gumb za prenos. Na terminalu pa moramo uporabiti orodja, razvita za terminal. Pri nalaganju datotek s terminala se pogosto pojavijo štiri orodja: curl , ramena , wget , in arija2 . Čeprav axel in aria2 morda nista dobro znana, večina uporabnikov terminala pozna curl in wget.

V tej vadnici bomo pogledali curl in wget, kako začeti, in kar je najpomembneje, razlike med njima.







Kaj je cURL?

cURL je brezplačen in odprtokodni pripomoček ukazne vrstice, ki uporabnikom omogoča prenos podatkov z enega oddaljenega računalnika na drugega z minimalno ali brez interakcije uporabnika. Uporaba CURL -a je razširjena v napravah, kot so usmerjevalniki, tiskalniki, telefoni, tablični računalniki, predvajalniki medijev itd.



Podpira nalaganje in nalaganje z uporabo protokolov, kot so HTTP/HTTPS, FTP, SFTP, SCP, IMAP, LDAP/LDAPS, SMB/SMBS, TELNET, POP3, GOPHER in mnogi, mnogi drugi.



cURL ponuja tudi pooblastila, prenose za nadaljevanje, preverjanje pristnosti uporabnika, potrdila SSL in še veliko več.





Kaj je wget?

GNU Wget, običajno imenovan wget, je brezplačen pripomoček za ukazno vrstico za prenos datotek z uporabo HTTP/HTTPS, FTP in FTPS. Ponuja funkcije, kot so rekurzivni prenosi, nadzor pasovne širine, nadaljuje prekinjene prenose, prenosi ozadja, rekurzivne zrcalne datoteke in imeniki ter mnoge druge.

Kako namestiti cURL in Wget?

cURL in wget sta priljubljena orodja, ki sta na voljo v večjih distribucijah Linuxa; če nimate nameščenega nobenega orodja, uporabite spodnje ukaze za namestitev:



Debian/Ubuntu:

# namestite cURL

sudo apt-get installcurl

# namestite wget

sudo apt-get install wget

Arch / Manjaro:

# namestite cURL

sudopacman-Scurl

# namestite wget

sudopacman-S wget

REHL/CentOS/Fedora:

# namestite cURL

sudo yum installcurl

sudodnfnamestitecurl

# namestite wget

sudo yum install wget

sudodnfnamestite wget

Kako uporabljati cURL in Wget (primeri primerov uporabe)?

Če želite razumeti podobnosti in razlike med cURL in wget, je dobro pogledati nekaj primerov:

Protokoli HTTP/HTTPS:

Tako cURL kot wget podpirata protokola HTTP in HTTPS. Če torej naložimo spletno mesto, kot je linuxhint.com:

curl https://linuxhint.com-alilinuxhint.html

curl https://linuxhint.com-alilinuxhint.html

%Skupaj%Prejeto%Xferd Povprečna hitrost Čas Čas Čas Tok

Dload Naloži skupno porabljeno levo hitrost

100256 tisoč0256 tisoč0 0166 tisoč0-: -: -0: 00: 01-:-:-166 tis

Privzeto bo cURL natisnil vsebino spletnega vira v terminalu. Z zastavico -o preusmerimo izhod v datoteko.

Za wget velja naslednje:

wgethttps://linuxhint.com

--2021-06-2005:09:Štiri, pet- https://linuxhint.com/

Reševanje linuxhint.com(linuxhint.com)... 104.21.58.234, 172.67.209.252,2606:4700:3033::6815: 3aea, ...

Povezovanje z linuxhint.com(linuxhint.com)|104.21.58.234|:443... povezan.

Zahteva HTTP je poslana in čaka na odgovor ...200v redu

Dolžina: nedoločeno[besedilo/html]

Shranjevanje v: 'index.html'

index.html

[ <=> ]256.25K 506KB/sv0,5 s

2021-06-dvajset05:09:46 (506KB/s)- 'index.html' shranjen[262396]

Wget pa shrani zahtevani vir v datoteko.

Dobro je omeniti, da oba orodja preneseta vir. Podrobnosti o dveh datotekah prikazujejo obe velikosti datotek.

$ls -index.html linuxhint.html

-rw-rw-r-- 1linuxhint linuxhint262396Junij19 petnajst:petdesetindex.html

-rw-rw-r-- 1linuxhint linuxhint262396Junijdvajset05:07 linuxhint.html

FTP protokol:

Tako cURL kot wget podpirata nalaganje na protokole FTP. Vendar pa cURL podpira nalaganje na ftp.

Za prenos datotek s strežnika FTP z wget uporabite spodnji ukaz:

wget -uporabnik= debian-geslo= 'Debian' ftp://192.168.0.112/backup.zst

wget -uporabnik= debian-geslo='debian'ftp://192.168.0.112/backup.zst

--2021-06-2005:29: 06- ftp://192.168.0.112/backup.zst

=>'Backup.zst'

Povezovanje z 192.168.0.112:enaindvajset... povezan.

Zapisovanjev kotdebian ... Zabeleženv!

==>SYST ... narejeno. ==>PWD ... končano.

==>TIP I ... končano. ==>CWD ni potreben.

==>SIZE backup.zst ... končano.

==>PASV ... končano. ==>RETR backup.zst ... končano.

backup.zst

[ <=> ] 0--.- KB/sv0s

2021-06-dvajset05:29: 06(0,00B/s)- 'backup.zst' shranjen[0]

Z uporabo curl dodajte-uzastava kot:

curl-udebian: debian 'ftp://192.168.0.112/backup.zst '-alibackup.zst

curl-udebian: debian'ftp://192.168.0.112/backup.zst' -alibackup.zst

%Skupaj%Prejeto%Xferd Povprečna hitrost Čas Čas Čas Tok

Dload Naloži skupno porabljeno levo hitrost

0 0 0 0 0 0 0 0-: -: - -:: -: - -: -: -0

Če želite naložiti amapadoftpz curl uporabljamo-Tmožnost kot:

curl-udebian: debian-Tbackup1.zst ftp://192.168.0.112/ftp/

Prepričajte se, da imenik obstaja in da ima uporabnik dovoljenja za pisanje vanj.

OPOMBA: Čeprav cURL podpira široko paleto protokolov, ne zagotavlja rekurzivnih prenosov. Po drugi strani Wget podpira rekurzivne prenose z možnostjo –recursive, saj tako funkcijo ponujajo protokoli HTTP/HTTPS in FTP/FTPS.

Podobnosti med wget in cURL

Zdaj pa češnja na torti:

  • Obe orodji podpirata standardne protokole, kot so HTTP, HTTPS, FTP, FTPS.
  • Oba orodja prenašata datoteke iz interneta.
  • Oba orodja podpirata piškotke HTTP.
  • Oba orodja podpirata izhod v datoteko.
  • Tako brezplačna kot aktivno razvita orodja.
  • Oba orodja podpirata prenose življenjepisov.
  • Oba orodja podpirata HTTP POST.

Razlike med wget in cURL

Tu je nekaj razlik med curl in wget:

  • Wget je preprost pripomoček za prenos, medtem ko curl ponuja veliko več.
  • Curl ponuja knjižnico libcurl, ki jo je mogoče razširiti v aplikacije z grafičnim vmesnikom. Wget pa je preprost pripomoček za ukazno vrstico.
  • Wget podpira manj protokolov v primerjavi s cURL.
  • Rekurzivni prenosi v curlu niso podprti.
  • Wget je prvotno na voljo v sistemih Linux, cURL pa je na voljo v sistemih Windows.
  • cURL podpira več vzporednih prenosov.
  • cURL izvaja dekompresije HTTP, kodirane s prenosom, medtem ko wget ne.
  • cURL podpira dvosmerni HTTP, medtem ko wget ponuja navaden HTTP POST.
  • cURL podpira več metod avtentikacije HTTP v primerjavi z wget.
  • Wget ne podpira SOCKS.
  • Wget zahteva namestitev gnuliba.
  • Za razliko od curla so funkcije, kot so piškotki, časovni žigi in sledilne preusmeritve, privzeto omogočene v wget. cURL zahteva, da je vsak izrecno naveden.

Zaključek

Ta vadnica se je osredotočila na podobnosti in razlike med cURL. Čeprav se zdi, da je cURL najboljša izbira, obstajajo primeri, ko je wget najboljša izbira.

Moj nasvet vam je, da izberete tisto, kar vam ustreza.