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 cURLsudo apt-get installkulot
# i-install ang wget
sudo apt-get install wget
Arko / Manjaro:
# i-install ang cURLsudopacman-Skulot
# i-install ang wget
sudopacman-S wget
REHL / CentOS / Fedora:
# i-install ang cURLsudo 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.htmlcurl 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.zstwget - 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.