Ano ang Pagkakaiba sa Pagitan ng wget vs curl?

What Is Difference Between Wget Vs Curl



Madalas na kailangan naming mag-download ng mga file mula sa mga malalayong server patungo sa aming lokal na makina. Sa isang grapikong desktop, maaari kaming gumamit ng isang browser ng GUI at i-click ang pindutang mag-download. Gayunpaman, sa isang terminal, kailangan naming gumamit ng mga tool na binuo para sa terminal. Kapag nagda-download ng mga file mula sa terminal, madalas na lumalabas ang apat na tool: kulot , balikat , wget , at aria2 . Habang ang axel at aria2 ay maaaring hindi kilala, karamihan sa mga gumagamit ng terminal ay alam ang curl at wget.

Sa tutorial na ito, titingnan namin ang curl at wget, kung paano magsimula, at pinakamahalaga, ang mga pagkakaiba sa pagitan nila.







Ano ang CURL?

Ang cURL ay isang libre at open-source na utos ng command-line na nagbibigay-daan sa mga gumagamit na maglipat ng data mula sa isang remote machine patungo sa isa pa na may kaunting o walang pakikipag-ugnay ng gumagamit. Ang paggamit ng CURL ay laganap sa mga aparato tulad ng mga router, printer, telepono, tablet, media player, at marami pa.



Sinusuportahan nito ang pag-download at pag-upload gamit ang mga protocol tulad ng HTTP / HTTPS, FTP, SFTP, SCP, IMAP, LDAP / LDAPS, SMB / SMBS, TELNET, POP3, GOPHER, at marami pa.



Nagbibigay din ang cURL ng mga proxy, ipagpatuloy ang paglipat, pagpapatotoo ng gumagamit, mga sertipiko ng SSL, at marami pang iba.





Ano ang wget?

Ang GNU Wget, karaniwang tinatawag na wget, ay isang libreng utos ng command-line para sa paglilipat ng mga file gamit ang HTTP / HTTPS, FTP, at FTPS. Nagbibigay ito ng mga tampok tulad ng mga recursive na pag-download, kontrol sa bandwidth, ipagpatuloy ang mga inalis na paglilipat, pag-download sa background, recursive mirror file at mga direktoryo, at marami pa.

Paano Mag-install ng cURL at Wget?

Ang cURL at wget ay mga tanyag na tool na madaling magagamit sa mga pangunahing pamamahagi ng Linux; kung wala kang naka-install na alinman sa tool, ginagamit mo ang mga utos sa ibaba upang mag-install:



Debian / Ubuntu:

# i-install ang cURL

sudo apt-get installkulot

# i-install ang wget

sudo apt-get install wget

Arko / Manjaro:

# i-install ang cURL

sudopacman-Skulot

# i-install ang wget

sudopacman-S wget

REHL / CentOS / Fedora:

# i-install ang cURL

sudo yum installkulot

sudodnfi-installkulot

# i-install ang wget

sudo yum install wget

sudodnfi-install wget

Paano Gumamit ng cURL at Wget (Halimbawa ng Mga Kaso sa Paggamit)?

Upang matiyak na nauunawaan mo ang mga pagkakatulad at pagkakaiba sa pagitan ng cURL at wget, magandang tingnan ang ilang mga halimbawa:

Mga Protokol ng HTTP / HTTPS:

Ang parehong cURL at wget ay sumusuporta sa mga HTTP at HTTPS na mga protokol. Samakatuwid, kung mag-download kami ng isang website tulad ng linuxhint.com:

curl https://linuxhint.com-o kayalinuxhint.html

curl https://linuxhint.com-o kayalinuxhint.html

%Kabuuan%Natanggap%Xferd Average na Oras ng Oras ng Oras Kasalukuyang

Dload Mag-upload ng Kabuuang Nagastos na Kaliwang Bilis

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

Bilang default, i-print ng cURL ang mga nilalaman ng mapagkukunang web sa terminal. Ginagamit namin ang -o flag upang i-redirect ang output sa isang file.

Nalalapat ang sumusunod sa wget:

wgethttps://linuxhint.com

--2021-06-2005:09:Apat lima- https://linuxhint.com/

Paglutas ng linuxhint.com(linuxhint.com)... 104.21.58.234, 172.67.209.252,2606:4700:3033::6815: 3aea, ...

Kumokonekta sa linuxhint.com(linuxhint.com)|104.21.58.234|:443... nakakonekta

Nagpadala ng kahilingan sa HTTP, naghihintay ng tugon ...200OK lang

Haba: hindi natukoy[text/html]

Sine-save sa: 'index.html'

index.html

[ <=> ]256.25K 506KB/ssa0.5s

2021-06-dalawampu05:09:46 (506KB/s)- Nai-save ang 'index.html'[262396]

Sa kabilang banda, si Wget ay nai-save ang hiniling na mapagkukunan sa isang file.

Mahusay na tandaan na ang parehong mga tool ay nag-download ng mapagkukunan. Ang mga detalye ng ls ng dalawang mga file ay nagpapakita ng parehong laki ng file.

$ls -angindex.html linuxhint.html

-rw-rw-r-- 1linuxhint linuxhint262396Si Jun19 labinlimang:limampuindex.html

-rw-rw-r-- 1linuxhint linuxhint262396Si Jundalawampu05:07 linuxhint.html

FTP Protocol:

Parehong mga pag-download ng suporta sa cURL at wget sa mga FTP na protokol. Gayunpaman, sinusuportahan ng cURL ang pag-upload sa ftp.

Gamitin ang utos sa ibaba upang mag-download ng mga file mula sa FTP server na may wget:

wget - gumagamit= debian--password= ’Debian’ ftp://192.168.0.112/backup.zst

wget - gumagamit= debian--password='debian'ftp://192.168.0.112/backup.zst

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

=>'Backup.zst'

Kumokonekta sa 192.168.0.112:dalawampu't isa... nakakonekta

Pagtotrososa bilangdebian ... Naka-logsa!

==>SYST ... tapos na. ==>PWD ... tapos na.

==>TYPE I ... tapos na. ==>Hindi kailangan ng CWD.

==>SIZE backup.zst ... tapos na.

==>PASV ... tapos na. ==>RETR backup.zst ... tapos na.

backup.zst

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

2021-06-dalawampu05:29: 06(0.00B/s)- Nai-save ang 'backup.zst'[0]

Gamit ang curl, idagdag ang-uwatawat bilang:

kulot-udebian: debian ‘ftp://192.168.0.112/backup.zst ’-o kayabackup.zst

kulot-udebian: debian'ftp://192.168.0.112/backup.zst' -o kayabackup.zst

%Kabuuan%Natanggap%Xferd Average na Oras ng Oras ng Oras Kasalukuyang

Dload Mag-upload ng Kabuuang Nagastos na Kaliwang Bilis

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

Upang mag-upload ng afilesaftpmay kulot, ginagamit namin ang-Tpagpipilian bilang:

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

Tiyaking umiiral ang direktoryo at ang gumagamit ay may mga pahintulot na sumulat dito.

TANDAAN: Bagaman sinusuportahan ng cURL ang iba't ibang mga protokol, hindi ito nagbibigay ng mga recursive na pag-download. Sa kabilang banda, sinusuportahan ng Wget ang mga recursive na pag-download gamit ang pagpipilian na –recursive bilang parehong alok ng HTTP / HTTPS at FTP / FTPS na mga protokol, tulad ng pagpapaandar.

Mga pagkakatulad sa pagitan ng wget at cURL

Ngayon para sa pag-icing sa cake:

  • Sinusuportahan ng parehong mga tool ang karaniwang mga protokol tulad ng HTTP, HTTPS, FTP, FTPS.
  • Ang parehong mga tool ay nag-download ng mga file mula sa internet.
  • Sinusuportahan ng parehong mga tool ang mga HTTP na cookies.
  • Ang parehong mga tool ay sumusuporta sa output sa isang file.
  • Parehong libre at aktibong binuo mga tool.
  • Sinusuportahan ng parehong mga tool ang mga paglipat ng resume.
  • Sinusuportahan ng parehong mga tool ang HTTP POST.

Mga Pagkakaiba sa Pagitan ng wget at cURL

Narito ang ilan sa mga pagkakaiba sa pagitan ng curl at wget:

  • Ang Wget ay isang simpleng utility sa paglipat, habang ang curl ay nag-aalok ng higit pa.
  • Nagbibigay ang Curl ng libcurl library, na maaaring mapalawak sa mga application ng GUI. Ang Wget, sa kabilang banda, ay isang simpleng utility na linya ng utos.
  • Sinusuportahan ni Wget ang mas kaunting mga protokol kumpara sa cURL.
  • Ang mga recursive na pag-download ay hindi suportado sa curl.
  • Ang wget ay katutubong magagamit sa mga Linux system, habang ang cURL ay madaling magagamit sa mga system ng Windows.
  • Sinusuportahan ng cURL ang maramihang mga parallel transfer.
  • gumaganap ang cURL decompressions ng Transfer-Encoded na HTTP, habang ang wget ay hindi.
  • Sinusuportahan ng cURL ang bidirectional HTTP habang nag-aalok ang wget ng isang simpleng HTTP POST.
  • Sinusuportahan ng cURL ang mas maraming mga pamamaraan ng HTTP auth kumpara sa wget.
  • Hindi sinusuportahan ni Wget ang mga SOCKS.
  • Kinakailangan ng Wget na naka-install na gnulib.
  • Hindi tulad ng curl, ang mga tampok tulad ng cookies, timestamp, at sundin ang mga pag-redirect ay pinapagana ng default sa wget. Kinakailangan ng cURL ang bawat isa ay tinukoy nang malinaw.

Konklusyon

Ang tutorial na ito ay nakatuon sa mga pagkakatulad at mga pagkakaiba sa pagitan ng cURL. Bagaman maaaring mukhang ang cURL ay ang higit na mataas na pagpipilian, may mga pagkakataon kung saan ang wget ang pinakamahusay na pagpipilian.

Ang payo ko sa iyo ay piliin kung ano ang gagana para sa iyo.