15 Mga Tip Kung Giunsa Paggamit ang Curl Command sa Linux


Balik sa tungatunga sa dekada 1990 sa dihang ang Internet bag-o pa, usa ka Swedish nga programmer nga ginganlag Daniel Stenberg nagsugod sa usa ka proyekto nga sa ngadtongadto mitubo ngadto sa gitawag nato nga curl karon.

Sa sinugdan, gitumong niya ang paghimo og bot nga mag-download sa currency exchange rates gikan sa usa ka web page matag karon ug unya ug maghatag sa Swedish Kronor nga katumbas sa US dollars ngadto sa IRC users.

Sa mubo nga istorya, ang proyekto milambo, nagdugang daghang mga protocol ug mga bahin sa dalan - ug ang nahabilin mao ang kasaysayan. Karon mag-dive kita gamit ang duha ka tiil ug magkat-on unsaon paggamit ang curl aron mabalhin ang data ug daghan pa sa Linux!

Gihiusa namo ang mosunod nga listahan sa 15 ka mga curl commands alang kanimo.

1. Tan-awa ang curl Version

Ang -V o --version nga mga opsyon dili lang ibalik ang bersyon, apan ang gisuportahan nga mga protocol ug feature sa imong kasamtangan nga bersyon.

$ curl --version

curl 7.47.0 (x86_64-pc-linux-gnu) libcurl/7.47.0 GnuTLS/3.4.10 zlib/1.2.8 libidn/1.32 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp 
Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP UnixSockets 

2. Pag-download og File

Kung gusto nimo mag-download og file, mahimo nimong gamiton ang curl gamit ang -O o -o nga mga kapilian. Ang nauna magtipig sa file sa kasamtangan nga direktoryo sa pagtrabaho nga adunay parehas nga ngalan sa hilit nga lokasyon, samtang ang ulahi nagtugot kanimo sa pagpiho sa usa ka lahi nga filename ug/o lokasyon.

$ curl -O http://yourdomain.com/yourfile.tar.gz # Save as yourfile.tar.gz
$ curl -o newfile.tar.gz http://yourdomain.com/yourfile.tar.gz # Save as newfile.tar.gz

3. Ipadayon ang Nabalda nga Pag-download

Kung ang usa ka pag-download nabalda tungod sa usa ka hinungdan (pananglitan, gamit ang Ctrl + c), dali ra nimo kini ipadayon. Ang paggamit sa -C – (dash C, space dash) nagsulti sa curl nga ipadayon ang pag-download sugod diin kini mihunong.

$ curl -C - -O http://yourdomain.com/yourfile.tar.gz

4. Pag-download sa Daghang mga File

Uban sa mosunod nga sugo imong i-download ang info.html ug about.html gikan sa http://yoursite.com ug http://mysite.com, matag usa, sa usa ka lakaw.

$ curl -O http://yoursite.com/info.html -O http://mysite.com/about.html 

5. Pag-download sa mga URL Gikan sa File

Kung imong gihiusa ang curl sa xargs, mahimo nimong i-download ang mga file gikan sa usa ka lista sa mga URL sa usa ka file.

$ xargs -n 1 curl -O < listurls.txt

6. Paggamit og Proxy nga adunay o walay Authentication

Kung naa ka sa luyo sa usa ka proxy server nga naminaw sa port 8080 sa proxy.yourdomain.com, buhata.

$ curl -x proxy.yourdomain.com:8080 -U user:password -O http://yourdomain.com/yourfile.tar.gz

diin mahimo nimong laktawan ang -U user:password kung ang imong proxy wala magkinahanglan og authentication.

7. Pangutana sa HTTP Header

Gitugotan sa mga header sa HTTP ang hilit nga web server nga magpadala dugang nga kasayuran bahin sa kaugalingon kauban ang aktwal nga hangyo. Naghatag kini sa kliyente og mga detalye kung giunsa pagdumala ang hangyo.

Aron mapangutana ang mga ulohan sa HTTP gikan sa usa ka website, buhata:

$ curl -I linux-console.net

Kini nga impormasyon anaa usab sa mga himan sa developer sa imong browser.

8. Paghimo og POST nga hangyo nga adunay mga Parameter

Ang mosunod nga sugo magpadala sa firstName ug lastName nga mga parametro, uban sa ilang katugbang nga mga bili, ngadto sa https://yourdomain.com/info.php.

$ curl --data "firstName=John&lastName=Doe" https://yourdomain.com/info.php

Mahimo nimong gamiton kini nga tip aron masundog ang pamatasan sa usa ka regular nga porma sa HTML.

9. Pag-download sa mga File gikan sa FTP Server nga adunay o walay Authentication

Kung ang usa ka hilit nga FTP server nagpaabut sa mga koneksyon sa ftp://yourftpserver, ang mosunud nga mando mag-download sa imongfile.tar.gz sa karon nga direktoryo sa pagtrabaho.

$ curl -u username:password -O ftp://yourftpserver/yourfile.tar.gz 

diin mahimo nimong laktawan ang -u username:password kung ang FTP server motugot sa mga wala mailhing login.

10. Pag-upload sa mga File sa FTP server nga adunay o walay Authentication

Aron ma-upload ang usa ka lokal nga file nga ginganlag mylocalfile.tar.gz sa ftp://yourftpserver gamit ang curl, buhata:

$ curl -u username:password -T mylocalfile.tar.gz ftp://yourftpserver

11. Ipiho ang Ahente sa Gumagamit

Ang ahente sa tiggamit bahin sa kasayuran nga gipadala kauban ang usa ka hangyo sa HTTP. Gipakita niini kung unsang browser ang gigamit sa kliyente sa paghimo sa hangyo. Atong tan-awon kon unsay gigamit sa atong kasamtangang curl nga bersyon isip default, ug usbon nato kini sa ulahi ngadto sa \Ako usa ka bag-ong web browser:

$ curl -I http://localhost --user-agent "I am a new web browser"

12. Tipigi ang Website Cookies

Gusto nga makita kung unsang mga cookies ang na-download sa imong computer kung nag-browse ka sa https://www.cnn.com? Gamita ang mosunod nga sugo aron i-save kini sa cnncookies.txt. Mahimo nimong gamiton ang cat command aron makita ang file.

$ curl --cookie-jar cnncookies.txt https://www.cnn.com/index.html -O

13. Ipadala ang Website Cookies

Mahimo nimong gamiton ang mga cookies nga nakuha sa katapusang tip sa sunod nga mga hangyo sa parehas nga site.

$ curl --cookie cnncookies.txt https://www.cnn.com

14. Usba ang Resolusyon sa Ngalan

Kung ikaw usa ka web developer ug gusto nga sulayan ang usa ka lokal nga bersyon sa yourdomain.com sa dili pa kini iduso nga live, mahimo nimo nga masulbad ang curl http://www.yourdomain.com sa imong localhost sama niini:

$ curl --resolve www.yourdomain.com:80:localhost http://www.yourdomain.com/

Busa, ang pangutana sa http://www.yourdomain.com mosulti sa curl nga hangyoon ang site gikan sa localhost imbes nga gamiton ang DNS o ang /etc/hosts file.

15. Limitahi ang Rate sa Pag-download

Aron mapugngan ang curl gikan sa pag-hosing sa imong bandwidth, mahimo nimong limitahan ang rate sa pag-download sa 100 KB/s sama sa mosunod.

$ curl --limit-rate 100K http://yourdomain.com/yourfile.tar.gz -O

Sa kini nga artikulo gipaambit namon ang usa ka mubo nga kasaysayan sa gigikanan sa curl ug gipatin-aw kung giunsa kini gamiton pinaagi sa 15 nga praktikal nga mga pananglitan.

Nahibal-an ba nimo ang bisan unsang uban pang mga curl nga mga mando nga mahimo’g wala namon makit-an sa kini nga artikulo? Mobati nga gawasnon nga ipaambit kini sa among komunidad sa mga komento! Usab, kung naa kay mga pangutana palihog ipahibalo kanamo. Kami nagpaabut nga makadungog gikan kanimo!