Naast wget is curl een primair hulpmiddel in de gereedschapskist van de Linux-goeroe bij het webscrapen, rondneuzen op internet of intranet, het downloaden van bestanden, het testen van applicaties en het voeren van weboproepen via een CLI-tool.
Curl wordt actief ontwikkeld door een gemeenschap van ontwikkelaars en is aanwezig op het web op https://curl.haxx.zie/.
Een snelle blik op enkele kenmerken van Curl:
- ondersteuning voor configuratiebestanden
- meerdere URL's in een enkele opdrachtregel
- bereik "globbing" ondersteuning: [0-13], een, twee, drie
- meerdere bestanden uploaden op een enkele opdrachtregel
- aangepaste maximale overdrachtssnelheid
- FTP-download, authenticatie
- Kerberos 5 (*14)
- actief/passief met PORT, EPRT, PASV of EPSV
- informatie over enkele bestandsgrootte (vergelijk met HTTP HEAD)
- uploaden via http-proxy als HTTP PUT
- download / upload cv
- alle bewerkingen kunnen worden getunneld via een http-proxy
- aanpasbaar om de wijzigingsdatum van het bestand op te halen
- SCP zowel wachtwoord als openbare sleutel auth
- SFTP zowel wachtwoord als openbare sleutel auth
- SFTP met aangepaste opdrachten verzonden voor/na de overdracht
- TELNET verbindingsonderhandeling connection
- aangepaste telnet-opties
- TELNET stdin/stdout I/O
- volledige LDAP URL-ondersteuning
- SMBv1 via TCP en SSL
- SMB downloaden en uploaden
- SMB-authenticatie met NTLMv1
- SMTP-verificatie: gewoon, inloggen, CRAM-MD5, Digest-MD5, NTLM (*9), Kerberos 5, (*4) en extern.
- stuur emails
- mail auth-ondersteuning voor vertrouwde server-naar-server-relay
- SMTP meerdere ontvangers
- POP3-authenticatie: Clear Text, APOP en SASL
- Op SASL gebaseerde authenticatie: gewoon, inloggen, CRAM-MD5, Digest-MD5, NTLM (*9), Kerberos 5 (*4) en extern.
- lijst e-mails
- e-mails ophalen
Voor meer functies
Laatste Curl-release
De nieuwste versie van curl vanaf januari 2020 is 7.68.0. Downloads worden op de curl-site geplaatst en de broncode is te vinden op de github-pagina voor het project. Zie de Changelog voor de nieuwste release-opmerkingen voor curl.
Curl bouwen en installeren vanaf de bron
Haal eerst de broncode voor curl van de downloadpagina. Ik zal dit niet demonstreren omdat je waarschijnlijk curl of wget nodig hebt om de broncode te krijgen en dat is overbodig om in deze tutorial te laten zien. Bekijk de gedownloade software hieronder:
Ook moet u installeren GCC en maken op uw computer voordat u begint, laten we aannemen dat het Debian of compatibel is:
$ apt-get install gcc $ apt-get install make
Pak nu de software uit met het tar-commando. En voer dan de uitgepakte map in en voer configure en make en make install . uit
$ tar xzvf curl-7.68.0.teer.gz $ cd curl-7.68.0 $ ./configure $ make $ sudo make install
Als je deze waarschuwing krijgt, heb je mogelijk 2 versies van curl geïnstalleerd en moet je ervoor zorgen dat je de libcurl gebruikt die je zojuist hebt gecompileerd met de curl-versie die je hebt gecompileerd. Dus stel de LD_LIBRARY_PATH in om het te repareren:
WAARSCHUWING: curl- en libcurl-versies komen niet overeen. Functionaliteit kan worden beïnvloed. $ export LD_LIBRARY_PATH=/usr/local/lib
Nu kun je zien dat curl en libcurl overeenkomende versies hebben en curl werkt zoals verwacht.
Curl installeren op Debian 10 of Ubuntu 19.10
Curl is standaard geïnstalleerd op de nieuwste versies van Debian en Ubuntu. Als je het om de een of andere reden hebt verwijderd, kun je het installeren met apt-get
sudo apt-get install curl
Hoe Curl op CentOS 8 te installeren
Curl is standaard geïnstalleerd op de nieuwste versies van CentoOS en Red Hat. Als je het om de een of andere reden hebt verwijderd, kun je het installeren met yum
sudo yum install curl
Download webpagina met krulvoorbeeld
Laten we een eenvoudige webpagina downloaden met curl. Hier is de syntaxis en het voorbeeld:
krul https://linuxhint.com/sitemap.xml > uit.webpagina ga naar buiten.webpagina
Voorbeeld van meerdere pagina's downloaden
U kunt jokertekens en mooie syntaxis gebruiken om veel bestanden tegelijk te downloaden. Hier is een voorbeeld om van Linuxhint de sitemappagina's te downloaden die een regelmatig patroon volgen:. De -O optie slaat de bestanden op in namen die hetzelfde zijn als de originele webpagina's, maar lokaal.
curl -O https://linuxhint.com/sitemap-pt-post-2019-[01-12].xml
Conclusie
Curl is standaard geïnstalleerd op de meeste moderne Linux-distributies, dus het is supereenvoudig om er toegang toe te krijgen. Compilatie of pakketinstallatie is ook eenvoudig. Bekijk de onderstaande bronnen voor meer informatie over alle overvloedige functies van curl.
Meer Curl-bronnen
- Curl Manpage
- Gratis Curl e-Book Alles Curl
- Gebruik Curl in Bash-scripts voor geavanceerd gebruik