15 tipp a „Curl” parancs használatához Linuxon
Az 1990-es évek közepén, amikor az internet még gyerekcipőben járt, egy Daniel Stenberg nevű svéd programozó elindított egy projektet, amely végül a ma curl néven ismertté nőtte ki magát.
Kezdetben egy olyan bot kifejlesztését tűzte ki célul, amely időnként letölti a valutaárfolyamokat egy weboldalról, és svéd korona ekvivalenseket biztosít amerikai dollárban az IRC-felhasználók számára.
Röviden, a projekt virágzott, számos protokollt és szolgáltatást adtak hozzá az út során – a többi pedig történelem. Most merüljünk bele mindkét lábbal, és tanuljuk meg, hogyan használhatjuk a curl-t adatátvitelre és még sok másra Linuxon!
Összeállítottuk Önnek az alábbi 15 curl parancsot tartalmazó listát.
1. Tekintse meg a curl verziót
A -V
vagy --version
opciók nem csak a verziót adják vissza, hanem az aktuális verzió támogatott protokolljait és szolgáltatásait is.
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. Töltse le a fájlt
Ha szeretne letölteni egy fájlt, használhatja a curl funkciót a -O
vagy -o
opciókkal. Az előbbi a fájlt az aktuális munkakönyvtárba menti ugyanazzal a névvel, mint a távoli helyen, míg az utóbbi lehetővé teszi egy másik fájlnév és/vagy hely megadását.
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. Folytassa a megszakított letöltést
Ha a letöltés valamilyen okból megszakadt (például a Ctrl + c
használatával), nagyon egyszerűen folytathatja azt. A -C
– (kötőjel C, szóköz) használata arra utasítja a curl-t, hogy ott folytassa a letöltést, ahol abbahagyta.
curl -C - -O http://yourdomain.com/yourfile.tar.gz
4. Több fájl letöltése
A következő paranccsal letöltheti az info.html és az about.html fájlokat a http://webhely.com és http:/ oldalról. /mysite.com, illetve egy mozdulattal.
curl -O http://yoursite.com/info.html -O http://mysite.com/about.html
5. URL-ek letöltése fájlból
Ha a curl-ot az xargs-szel kombinálja, akkor a fájlban található URL-ek listájából tölthet le fájlokat.
xargs -n 1 curl -O < listurls.txt
6. Használjon proxyt hitelesítéssel vagy anélkül
Ha a proxy.yourdomain.com címen a 8080 porton figyelő proxyszerver mögött áll, tegye ezt.
curl -x proxy.yourdomain.com:8080 -U user:password -O http://yourdomain.com/yourfile.tar.gz
ahol kihagyhatja a -U user:password elemet, ha a proxy nem igényel hitelesítést.
7. HTTP-fejlécek lekérdezése
A HTTP fejlécek lehetővé teszik a távoli webszerver számára, hogy további információkat küldjön magáról a tényleges kéréssel együtt. Ez az ügyfél számára tájékoztatást nyújt a kérés kezelésének módjáról.
A HTTP-fejlécek webhelyről történő lekérdezéséhez tegye a következőket:
curl -I linux-console.net
Ez az információ a böngésző fejlesztői eszközeiben is elérhető.
8. Készítsen POST kérést a paraméterekkel
A következő parancs elküldi a firstName és lastName paramétereket a megfelelő értékekkel együtt a https://yourdomain.com/info.php címre. .
curl --data "firstName=John&lastName=Doe" https://yourdomain.com/info.php
Ennek a tippnek a segítségével szimulálhatja egy normál HTML-űrlap viselkedését.
9. Fájlok letöltése FTP-kiszolgálóról hitelesítéssel vagy anélkül
Ha egy távoli FTP-kiszolgáló az ftp://yourftpserver címen várja a kapcsolatokat, a következő parancs letölti a yourfile.tar.gz fájlt az aktuális munkakönyvtárból.
curl -u username:password -O ftp://yourftpserver/yourfile.tar.gz
ahol kihagyhatja a -u felhasználónév:jelszó elemet, ha az FTP-szerver lehetővé teszi a névtelen bejelentkezést.
10. Fájlok feltöltése FTP-kiszolgálóra hitelesítéssel vagy anélkül
A curl segítségével mylocalfile.tar.gz nevű helyi fájl feltöltéséhez az ftp://yourftpserver mappába, tegye a következőket:
curl -u username:password -T mylocalfile.tar.gz ftp://yourftpserver
11. Adja meg a felhasználói ügynököt
A felhasználói ügynök része a HTTP-kéréssel együtt elküldött információknak. Ez jelzi, hogy a kliens melyik böngészőt használta a kérelem benyújtásához. Nézzük meg, hogy a jelenlegi curl verziónk mit használ alapértelmezettként, és később módosítsunk „Új webböngésző vagyok”-ra:
curl -I http://localhost --user-agent "I am a new web browser"
12. Weboldal cookie-k tárolása
Szeretné látni, hogy mely cookie-k kerülnek letöltésre a számítógépére, amikor a https://www.cnn.com webhelyet böngészi? A következő paranccsal mentheti őket a cnncookies.txt fájlba. Ezután a cat paranccsal megtekintheti a fájlt.
curl --cookie-jar cnncookies.txt https://www.cnn.com/index.html -O
13. Weboldal cookie-k küldése
Az utolsó tippben lekért cookie-kat használhatja az ugyanazon webhelyhez intézett további kérések során.
curl --cookie cnncookies.txt https://www.cnn.com
14. Módosítsa a névfelbontást
Ha Ön webfejlesztő, és szeretné tesztelni a sajatdomain.com helyi verzióját, mielőtt közzétenné, beállíthatja a curl feloldását a http://www.sajatdomain.com címen. > a helyi házigazdának, így:
curl --resolve www.yourdomain.com:80:localhost http://www.yourdomain.com/
Így a http://www.yourdomain.com lekérdezés arra utasítja a curl-t, hogy a DNS vagy az /etc/hosts fájl használata helyett kérje le a webhelyet a localhosttól.
15. Letöltési sebesség korlátozása
Ha meg szeretné akadályozni, hogy a hullámosodás átterjedjen a sávszélességen, a letöltési sebességet 100 KB/s-ra korlátozhatja az alábbiak szerint.
curl --limit-rate 100K http://yourdomain.com/yourfile.tar.gz -O
Összegzés
Ebben a cikkben megosztottuk a göndörítés eredetének rövid történetét, és 15 gyakorlati példán keresztül elmagyaráztuk, hogyan kell használni.
Tud más curl parancsról, amelyet esetleg kihagytunk ebből a cikkből? Nyugodtan oszd meg őket közösségünkkel kommentben! Továbbá, ha kérdése van, tudassa velünk. Várom válaszukat!