cURL kundër wget në Linux: Cili është ndryshimi?
Përmbledhje: Komanda wget është menduar kryesisht për shkarkimin e faqeve në internet dhe faqeve të internetit dhe, në krahasim me cURL, nuk mbështet aq shumë protokolle. cURL është për transferimet e skedarëve në distancë të të gjitha llojeve dhe jo vetëm për faqet e internetit, dhe gjithashtu mbështet veçori shtesë si ngjeshja e skedarëve.
Nëse pyet një grup përdoruesish Linux se me çfarë shkarkojnë skedarët, disa do të thonë wget
dhe të tjerët do të thonë cURL
. Cili është ndryshimi dhe a është njëri më i mirë se tjetri?
Historia e wget dhe cURL
Studiuesit qeveritarë kishin filluar të lidhnin rrjete të ndryshme së bashku qysh në vitet 1960, duke krijuar funksione rrjeti të lidhura. Por lindja e internetit, siç e njohim ne, erdhi më 1 janar 1983 kur u implementua protokolli TCP/IP. Kjo ishte hallka që mungonte. Ai lejoi kompjuterët dhe rrjetet e ndryshme të komunikojnë duke përdorur një standard të përbashkët.
Në vitin 1991, CERN lëshoi softuerin e tyre World Wide Web të cilin e kishin përdorur brenda për disa vite. Interesi për këtë mbivendosje vizuale për internetin ishte i menjëhershëm dhe i përhapur. Në fund të vitit 1994, kishte 10,000 serverë ueb dhe 10 milionë përdorues.
Këto dy piketa – interneti dhe ueb – përfaqësojnë fytyra shumë të ndryshme të lidhjes. Por ata ndajnë gjithashtu shumë të njëjtin funksionalitet.
Lidhshmëria do të thotë pikërisht këtë. Po lidheni me një pajisje në distancë, si p.sh. një server. Dhe ju po lidheni me të sepse ka diçka në të që ju nevojitet ose dëshironi. Por si mund ta rifitoni atë burim të pritur nga distanca në kompjuterin tuaj lokal, nga linja e komandës Linux?
Në vitin 1996, lindën dy shërbime që ju lejojnë të shkarkoni burime të strehuara nga distanca. Ato janë wget
, i cili u publikua në janar dhe cURL
që u publikua në dhjetor. Ata të dy funksionojnë në linjën e komandës Linux. Ata të dy lidhen me serverë të largët dhe të dy marrin gjëra për ju.
Por ky nuk është vetëm rasti i zakonshëm i Linux-it që ofron dy ose më shumë mjete për të bërë të njëjtën punë. Këto shërbime kanë qëllime të ndryshme dhe specializime të ndryshme. Problemi është se ato janë mjaft të ngjashme për të shkaktuar konfuzion se cilin duhet përdorur dhe kur.
Konsideroni dy kirurgë. Ju ndoshta nuk dëshironi që një kirurg okular të kryejë operacionin e bypass-it tuaj në zemër, as që dëshironi që kirurgu i zemrës të bëjë operacionin tuaj të kataraktit. Po, ata janë të dy profesionistë mjekësorë shumë të aftë, por kjo nuk do të thotë se ata janë zëvendësues për njëri-tjetrin.
E njëjta gjë është e vërtetë për wget
dhe cURL
.
wget dhe cURL Krahasuar
w në komandën wget
është një tregues i qëllimit të tij të synuar. Qëllimi i tij kryesor është të shkarkojë faqet e internetit - apo edhe faqet e internetit të tëra. Faqja e saj man
e përshkruan atë si një mjet për të shkarkuar skedarë nga Uebi duke përdorur protokollet HTTP, HTTPS dhe FTP.
Në të kundërt, cURL
funksionon me 26 protokolle, duke përfshirë SCP, SFTP dhe SMSB si dhe HTTPS. Faqja e saj man
thotë se është një mjet për transferimin e të dhënave në ose nga një server. Nuk është përshtatur për të punuar me faqet e internetit, veçanërisht. Është menduar për të bashkëvepruar me serverë të largët, duke përdorur ndonjë nga protokollet e shumta të internetit që ai mbështet.
Pra, wget
është kryesisht i përqendruar në faqen e internetit, ndërsa cURL
është diçka që funksionon në një nivel më të thellë, në nivelin e internetit të thjeshtë.
wget
është në gjendje të rimarrë faqet e internetit dhe mund të lundrojë në mënyrë rekursive të tëra strukturat e drejtorive në serverat e uebit për të shkarkuar uebfaqe të tëra. Është gjithashtu në gjendje të rregullojë lidhjet në faqet e marra në mënyrë që ato të tregojnë saktë faqet e internetit në kompjuterin tuaj lokal, dhe jo te homologët e tyre në serverin e largët të internetit.
cURL
ju lejon të ndërveproni me serverin në distancë. Mund të ngarkojë skedarë, si dhe t'i marrë ato. cURL
funksionon me përfaqësuesit SOCKS4 dhe SOCKS5, dhe HTTPS për përfaqësuesin. Ai mbështet dekompresimin automatik të skedarëve të ngjeshur në formatet GZIP, BROTLI dhe ZSTD. cURL
ju lejon gjithashtu të shkarkoni transferime të shumta paralelisht.
Mbivendosja midis tyre është se wget
dhe cURL
të dyja ju lejojnë të merrni faqet e internetit dhe të përdorni serverët FTP.
Është vetëm një metrikë e përafërt, por ju mund të merrni një vlerësim të grupeve relative të veçorive të dy mjeteve duke parë gjatësinë e faqeve të tyre man
. Në makinën tonë të testimit, faqja e njeriut për wget
është 1433 rreshta e gjatë. Faqja man
për cURL
është 5296 rreshta të pamasë.
Një vështrim i shpejtë në wget
Për shkak se wget
është pjesë e projektit GNU, duhet ta gjeni të parainstaluar në të gjitha shpërndarjet Linux. Përdorimi i tij është i thjeshtë, veçanërisht për përdorimet e tij më të zakonshme: shkarkimi i faqeve të internetit ose skedarëve.
Thjesht përdorni komandën wget
me URL-në e faqes së internetit ose skedarit në distancë.
wget https://file-examples.com/wp-content/uploads/2017/02/file-sample_100kB.doc
Skedari merret dhe ruhet në kompjuterin tuaj me emrin e tij origjinal.
Për të ruajtur skedarin me një emër të ri, përdorni opsionin -O
(dokumenti dalës).
wget -O word-file-test.doc https://file-examples.com/wp-content/uploads/2017/02/file-sample_100kB.doc
Skedari i marrë ruhet me emrin tonë të zgjedhur.
Mos përdorni opsionin -O
kur jeni duke marrë faqet e internetit. Nëse e bëni këtë, të gjithë skedarët e marrë bashkohen në një.
Për të marrë një faqe interneti të tërë, përdorni opsionin -m
(pasqyrë) dhe URL-në e faqes kryesore të sajtit. Ju gjithashtu do të dëshironi të përdorni --page-requisites
për t'u siguruar që të gjithë skedarët mbështetës që kërkohen për paraqitjen e duhur të faqeve të internetit janë shkarkuar gjithashtu. Opsioni --convert-links
rregullon lidhjet në skedarin e marrë për të treguar destinacionet e duhura në kompjuterin tuaj lokal në vend të vendndodhjeve të jashtme në faqen e internetit.
Një vështrim i shpejtë në cURL
cURL
është një projekt i pavarur me burim të hapur. Është para-instaluar në Manjaro 21 dhe Fedora 36, por duhej të instalohej në Ubuntu 21.04.
Kjo është komanda për të instaluar cURL
në Ubuntu.
sudo apt install curl
Për të shkarkuar të njëjtin skedar siç bëmë me wget
dhe për ta ruajtur me të njëjtin emër, duhet të përdorim këtë komandë. Vini re se opsioni -o
(output) është i vogël me cURL
.
curl -o word-file-test.doc https://file-examples.com/wp-content/uploads/2017/02/file-sample_100kB.doc
Skedari është shkarkuar për ne. Një shirit progresi ASCII shfaqet gjatë shkarkimit.
Për t'u lidhur me një server FTP dhe për të shkarkuar një skedar, përdorni opsionin -u
(user) dhe jepni një çift emri përdoruesi dhe fjalëkalimi, si kjo:
curl -o test.png -u demo:password ftp://test.rebex.net/pub/example/KeyGenerator.png
Kjo shkarkon dhe riemëron një skedar nga një server testues FTP.
Nuk ka më të mirë
Është e pamundur të përgjigjesh Cilën duhet të përdor pa pyetur Çfarë po përpiqesh të bësh?
Pasi të kuptoni se çfarë bëjnë wget
dhe cURL
, do të kuptoni se nuk janë në konkurrencë. Ata nuk plotësojnë të njëjtën kërkesë dhe nuk po përpiqen të ofrojnë të njëjtin funksionalitet.
Shkarkimi i faqeve të internetit dhe faqeve të internetit është ajo ku qëndron epërsia e wget
. Nëse kjo është ajo që po bëni, përdorni wget
. Për çdo gjë tjetër - ngarkimi, për shembull, ose përdorimi i ndonjë prej protokolleve të tjera - përdorni cURL
.