Hva er forskjellen mellom wget vs curl?

What Is Difference Between Wget Vs Curl



Vi trenger ofte å laste ned filer fra eksterne servere til vår lokale maskin. På et grafisk skrivebord kan vi bruke en GUI -nettleser og klikke på nedlastingsknappen. På en terminal må vi imidlertid bruke verktøy utviklet for terminalen. Når du laster ned filer fra terminalen, kommer det ofte opp fire verktøy: krøll , skulder , wget , og aria2 . Selv om axel og aria2 kanskje ikke er godt kjent, kjenner de fleste terminalbrukere curl og wget.

I denne opplæringen vil vi se på curl og wget, hvordan du kommer i gang, og viktigst av alt, forskjellene mellom dem.







Hva er cURL?

cURL er et gratis og åpen kildekode-kommandolinjeverktøy som lar brukere overføre data fra en ekstern maskin til en annen med minimal eller ingen brukerinteraksjon. CURL -bruk er utbredt på enheter som rutere, skrivere, telefoner, nettbrett, mediespillere og mer.



Den støtter nedlasting og opplasting med protokoller som HTTP/HTTPS, FTP, SFTP, SCP, IMAP, LDAP/LDAPS, SMB/SMBS, TELNET, POP3, GOPHER og mange, mange flere.



cURL tilbyr også fullmakter, gjenoppta overføringer, brukerautentisering, SSL -sertifikater og mye mer.





Hva er wget?

GNU Wget, ofte kalt wget, er et gratis kommandolinjeverktøy for overføring av filer ved hjelp av HTTP/HTTPS, FTP og FTPS. Den tilbyr funksjoner som rekursive nedlastinger, båndbreddekontroll, gjenopptar avbrutte overføringer, bakgrunnsnedlastinger, rekursive speilfiler og kataloger og mange flere.

Hvordan installere cURL og Wget?

cURL og wget er populære verktøy som er lett tilgjengelige i store Linux -distribusjoner; hvis du ikke har noen av verktøyene installert, bruker du kommandoene nedenfor for å installere:



Debian/Ubuntu:

# installer cURL

sudo apt-get installkrøll

# installer wget

sudo apt-get install wget

Arch / Manjaro:

# installer cURL

sudoPac Man-Skrøll

# installer wget

sudoPac Man-S wget

REHL/CentOS/Fedora:

# installer cURL

sudo yum installerekrøll

sudodnfinstallerekrøll

# installer wget

sudo yum installere wget

sudodnfinstallere wget

Hvordan bruke cURL og Wget (eksempelbrukstilfeller)?

For å sikre at du forstår likhetene og forskjellene mellom cURL og wget, er det godt å se på noen eksempler:

HTTP/HTTPS -protokoller:

Både cURL og wget støtter HTTP- og HTTPS -protokoller. Derfor, hvis vi laster ned et nettsted som linuxhint.com:

krølle https://linuxhint.com-ellerlinuxhint.html

krølle https://linuxhint.com-ellerlinuxhint.html

%Total%Mottatt%Xferd Gjennomsnittlig hastighet Tid Tid Tid Gjeldende

Dload Last opp total brukt venstre hastighet

100256k0256k0 0166k0-: -: -0: 00: 01-:-:-166k

Som standard vil cURL skrive ut innholdet i nettressursen i terminalen. Vi bruker -o -flagget for å omdirigere utdataene til en fil.

Følgende gjelder for wget:

wgethttps://linuxhint.com

--2021-06-2005:09:Fire fem- https://linuxhint.com/

Løser linuxhint.com(linuxhint.com)... 104.21.58.234, 172.67.209.252,2606:4700:3033::6815: 3aea, ...

Koble til linuxhint.com(linuxhint.com)|104.21.58.234|:443... tilkoblet.

HTTP -forespørsel sendt, venter på svar ...200OK

Lengde: uspesifisert[tekst/html]

Lagrer i: 'index.html'

index.html

[ <=> ]256,25K 506KB/si0,5 sek

2021-06-tjue05:09:46 (506KB/s)- ‘index.html’ lagret[262396]

Wget, derimot, lagrer den forespurte ressursen i en fil.

Det er godt å merke seg at begge verktøyene laster ned ressursen. LS -detaljene for de to filene viser begge filstørrelsene.

$ls -deindex.html linuxhint.html

-rw-rw-r-- 1linuxhint linuxhint262396Juni19 femten:femtiindex.html

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

FTP -protokoll:

Både cURL og wget støtter nedlastinger på FTP -protokoller. CURL støtter imidlertid opplasting til ftp.

Bruk kommandoen nedenfor for å laste ned filer fra FTP -server med wget:

wget --bruker= debian--passord= 'Debian' ftp://192.168.0.112/backup.zst

wget --bruker= debian--passord='debian'ftp://192.168.0.112/backup.zst

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

=>‘Backup.zst’

Koble til 192.168.0.112:tjueen... tilkoblet.

Hogsti somdebian ... Loggeti!

==>SYST ... gjort. ==>PWD ... ferdig.

==>TYPE I ... ferdig. ==>CWD ikke nødvendig.

==>SIZE backup.zst ... ferdig.

==>PASV ... gjort. ==>RETR backup.zst ... gjort.

backup.zst

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

2021-06-tjue05:29: 06(0,00B/s)- ‘backup.zst’ lagret[0]

Legg til-uflagg som:

krøll-udebian: debian ‘ftp://192.168.0.112/backup.zst ’-ellerbackup.zst

krøll-udebian: debian'ftp://192.168.0.112/backup.zst' -ellerbackup.zst

%Total%Mottatt%Xferd Gjennomsnittlig hastighet Tid Tid Tid Gjeldende

Dload Last opp total brukt venstre hastighet

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

For å laste opp enfiltilftpmed krøll, bruker vi-Talternativ som:

krøll-udebian: debian-Tbackup1.zst ftp://192.168.0.112/ftp/

Sørg for at katalogen eksisterer og at brukeren har skrivetillatelser til den.

MERK: Selv om cURL støtter et stort utvalg av protokoller, gir den ikke rekursive nedlastinger. På den annen side støtter Wget rekursive nedlastinger ved hjelp av –rekursivt alternativ som både HTTP/HTTPS og FTP/FTPS protokoller tilbyr, slik funksjonalitet.

Likheter mellom wget og cURL

Nå til glasuren på kaken:

  • Begge verktøyene støtter standardprotokoller som HTTP, HTTPS, FTP, FTPS.
  • Begge verktøyene laster ned filer fra internett.
  • Begge verktøyene støtter HTTP -informasjonskapsler.
  • Begge verktøyene støtter utdata til en fil.
  • Både gratis og aktivt utviklede verktøy.
  • Begge verktøyene støtter CV -overføringer.
  • Begge verktøyene støtter HTTP POST.

Forskjeller mellom wget og cURL

Her er noen av forskjellene mellom curl og wget:

  • Wget er et enkelt overføringsverktøy, mens curl tilbyr så mye mer.
  • Curl tilbyr libcurl -biblioteket, som kan utvides til GUI -applikasjoner. Wget, derimot, er et enkelt kommandolinjeverktøy.
  • Wget støtter færre protokoller sammenlignet med cURL.
  • Rekursive nedlastinger støttes ikke i curl.
  • Wget er opprinnelig tilgjengelig i Linux -systemer, mens cURL er lett tilgjengelig i Windows -systemer.
  • cURL støtter flere parallelle overføringer.
  • cURL utfører overføringskodede HTTP-dekomprimeringer, mens wget ikke gjør det.
  • cURL støtter toveis HTTP mens wget tilbyr en vanlig HTTP POST.
  • cURL støtter flere HTTP -godkjenningsmetoder sammenlignet med wget.
  • Wget støtter ikke SOCKS.
  • Wget krever gnulib installert.
  • I motsetning til curl, er funksjoner som informasjonskapsler, tidsstempler og følge -viderekoblinger aktivert som standard i wget. cURL krever at hver spesifiseres eksplisitt.

Konklusjon

Denne opplæringen fokuserte på likhetene og forskjellene mellom cURL. Selv om det kan virke som cURL er det overlegne valget, er det tilfeller der wget er det beste valget.

Mitt råd til deg er å velge det som fungerer for deg.