De cURL-opdracht in Linux is een krachtig hulpmiddel voor het overbrengen van gegevens van of naar een server met behulp van verschillende protocollen, waaronder HTTP, HTTPS, FTP en meer. Het wordt vaak gebruikt voor het automatiseren van webverzoeken, het testen van API's en het downloaden van bestanden van internet. cURL is veelzijdig en kan een breed scala aan taken aan, van eenvoudige bestandsdownloads tot complexe meerdelige formulierinzendingen.
In deze handleiding zullen we 30 praktische voorbeelden verkennen van het gebruik van de cURL-opdracht in Linux. Deze voorbeelden behandelen algemene gebruiksscenario's, zoals het downloaden van bestanden, het verzenden van gegevens naar API's, het afhandelen van authenticatie en meer, waarbij de flexibiliteit en kracht van cURL voor verschillende taken wordt gedemonstreerd.
De syntaxis van het cURL-commando
Voordat we doorgaan met het demonstreren van 30 voorbeelden met het cURL-commando, is het een goed idee om eerst de syntaxis ervan te begrijpen:
curl [options] [URL]
In deze syntaxis:
- opties: Dit zijn de parameters die het gedrag van cURL wijzigen.
- URL: dit is het adres van het bestand of de bron waarmee u wilt communiceren.
cURL-opdrachtopties
cURL biedt veel opties waarmee u het gedrag ervan kunt aanpassen. Hier zijn enkele van de meest gebruikte opties:
- -O: downloadt het bestand vanaf de opgegeven URL.
- -I: Haalt de HTTP-header op van de server.
- -u: Specificeert de gebruikersreferenties voor serverauthenticatie.
- -d: verzendt de opgegeven gegevens in een POST-verzoek naar de server.
- -x: specificeert het proxyadres dat voor de verzoeken moet worden gebruikt.
30 Voorbeelden van cURL-opdracht in Linux
Laten we nu eens kijken naar enkele praktische voorbeelden van het gebruik van de opdracht cURL. Elk voorbeeld wordt voorafgegaan door een uitleg, gevolgd door een demonstratie van de uitvoer.
Voorbeeld 1: Gegevens ophalen van een URL
Het meest elementaire gebruik van cURL is het ophalen van de inhoud van een webpagina. Hier ziet u hoe u het kunt doen:
curl https://www.example.com
Met deze opdracht wordt de HTML-inhoud van de webpagina op www.example.com opgehaald.
Voorbeeld 2: Een bestand downloaden
cURL kan ook worden gebruikt om bestanden van internet te downloaden. Hier is een voorbeeld:
curl -O https://www.example.com/file.txt
Met deze opdracht downloadt u het bestand file.txt van www.example.com en slaat u het op in de huidige map.
Voorbeeld 3: Een POST-verzoek verzenden
U kunt cURL gebruiken om POST-verzoeken naar een server te verzenden. Hier ziet u hoe:
curl -d "param1=value1¶m2=value2" -X POST http://www.example.com
Met deze opdracht wordt een HTTP POST-verzoek naar www.example.com verzonden met de gegevens param1=waarde1¶m2=waarde2.
Voorbeeld 4: HTTP-headers ophalen
Als u de HTTP-headers van een server wilt ophalen, kunt u de optie -I gebruiken. Hier is een voorbeeld:
curl -I https://www.example.com
Met deze opdracht worden de HTTP-headers opgehaald van www.example.com.
Voorbeeld 5: Een proxy gebruiken
Als u een proxy moet gebruiken, geeft u deze op met de optie -x. Hier ziet u hoe:
curl -x http://proxy.example.com:8080 https://www.example.com
Met deze opdracht wordt het verzoek naar www.example.com verzonden via de proxy op proxy.example.com:8080.
Voorbeeld 6: Cookies verzenden
Met de optie -b kunt u cookies meesturen met uw verzoek. Hier is een voorbeeld:
curl -b "name=value" https://www.example.com
Met deze opdracht wordt een cookie met naam=waarde naar www.example.com verzonden.
Voorbeeld 7: Gebruikersagent verzenden
Websites maken vaak gebruik van de user-agent om inhoud te leveren die geschikt is voor de browser van de klant. Om een user-agent met uw verzoek te sturen, gebruikt u de optie -A:
curl -A "Mozilla/5.0" https://www.example.com
Met deze opdracht wordt een verzoek verzonden naar www.example.com, waarbij de user-agent is ingesteld als Mozilla/5.0.
Voorbeeld 8: Omleidingen volgen
Sommige URL's verwijzen door naar andere URL's. Om deze omleidingen te volgen, gebruikt u de optie -L:
curl -L https://www.example.com
Deze opdracht volgt alle omleidingen vanaf www.example.com.
Voorbeeld 9: Uitvoer opslaan in een bestand
Om de uitvoer van een cURL-opdracht in een bestand op te slaan, gebruikt u de optie -o:
curl -o output.html https://www.example.com
Met deze opdracht wordt de uitvoer van www.example.com opgeslagen in output.html.
Voorbeeld 10: Bestanden uploaden met FTP
cURL kan bestanden uploaden naar een server via FTP. Hier ziet u hoe:
curl -T file.txt ftp://ftp.example.com --user username:password
Met deze opdracht wordt file.txt geüpload naar ftp.example.com met behulp van de opgegeven gebruikersnaam en wachtwoord.
Voorbeeld 11: Een download hervatten
Als een download wordt onderbroken, kunt u deze hervatten met de optie -C –:
curl -C - -O https://www.example.com/file.txt
Met deze opdracht wordt het downloaden van file.txt van www.example.com hervat.
Voorbeeld 12: Meerdere bestanden downloaden
Als u meerdere bestanden wilt downloaden, geeft u meerdere URL's op:
curl -O https://www.example.com/file1.txt -O https://www.example.com/file2.txt
Met deze opdracht worden file1.txt en file2.txt gedownload van www.example.com.
Voorbeeld 13: Een DELETE-verzoek verzenden
Om een DELETE-verzoek te verzenden, gebruikt u de optie -X DELETE:
curl -X DELETE https://www.example.com/resource
Met deze opdracht wordt een DELETE-verzoek verzonden naar de URL www.example.com/resource.
Voorbeeld 14: Uitgebreide uitvoer
Gebruik de optie -v voor gedetailleerde informatie over het verzoek en het antwoord:
curl -v https://www.example.com
Deze opdracht biedt uitgebreide uitvoer voor het verzoek aan www.example.com.
Voorbeeld 15: Stille modus
Om de voortgangsmeter en foutmeldingen te onderdrukken, gebruikt u de optie -s:
curl -s https://www.example.com
Met deze opdracht wordt de inhoud van www.example.com in de stille modus opgehaald.
Voorbeeld 16: Weergave van de downloadvoortgang
Om de downloadvoortgang in een beter leesbaar formaat weer te geven, gebruikt u de optie #:
curl -# -O https://www.example.com/file.txt
Met deze opdracht wordt file.txt gedownload van www.example.com en wordt de voortgang weergegeven als een voortgangsbalk.
Voorbeeld 17: JSON-gegevens verzenden
Om JSON-gegevens in een POST-verzoek te verzenden, gebruikt u de optie -H om het inhoudstype in te stellen:
curl -d '{"key1":"value1", "key2":"value2"}' -H "Content-Type: application/json" -X POST https://www.example.com
Met deze opdracht wordt een POST-verzoek met JSON-gegevens naar www.example.com verzonden.
Voorbeeld 18: cURL gebruiken met een API
cURL wordt vaak gebruikt om met API's te communiceren. Hier is een voorbeeld:
curl -H "Authorization: Bearer YOUR_TOKEN" https://api.example.com
Met deze opdracht wordt een verzoek verzonden naar https://api.example.com met een autorisatieheader.
Voorbeeld 19: Bestanden downloaden op de achtergrond
Om een bestand op de achtergrond te downloaden, gebruik je de optie -O met een ampersand aan het einde:
curl -O https://www.example.com/file.txt &
Met deze opdracht wordt file.txt op de achtergrond gedownload van www.example.com.
Voorbeeld 20: Gegevens verzenden vanuit een bestand
Om gegevens uit een bestand in een POST-verzoek te verzenden, gebruikt u het @-symbool:
curl -d @data.txt -X POST https://www.example.com
Met deze opdracht wordt een POST-verzoek met de gegevens van data.txt naar www.example.com verzonden.
Voorbeeld 21: Inhoud ophalen van FTP-server
cURL kan worden gebruikt om inhoud van een FTP-server op te halen. Hier ziet u hoe:
curl ftp://ftp.example.com/file.txt --user username:password
Deze opdracht haalt file.txt op van ftp.example.com met behulp van de opgegeven gebruikersnaam en wachtwoord.
Voorbeeld 22: Inhoud ophalen van een met een wachtwoord beveiligde website
Om inhoud op te halen van een met een wachtwoord beveiligde website, gebruikt u de optie -u:
curl -u username:password https://www.example.com
Met deze opdracht wordt de inhoud opgehaald van www.example.com met behulp van de opgegeven gebruikersnaam en wachtwoord.
Voorbeeld 23: Inhoud ophalen van een website met SSL
Om inhoud van een website met SSL op te halen, gebruikt u de optie -k:
curl -k https://www.example.com
Deze opdracht haalt de inhoud op van www.example.com en negeert eventuele SSL-certificaatwaarschuwingen.
Voorbeeld 24: Een PUT-verzoek verzenden
Om een PUT-verzoek te verzenden, gebruikt u de -X PUT-optie:
curl -X PUT -d "data" https://www.example.com/resource
Met deze opdracht wordt een PUT-verzoek met de gegevens “data” verzonden naar www.example.com/resource.
Voorbeeld 25: De antwoordheaders ophalen
Om alleen de antwoordheaders op te halen, gebruikt u de optie -I:
curl -I https://www.example.com
Met deze opdracht worden alleen de antwoordheaders opgehaald van www.example.com.
Voorbeeld 26: Inhoud ophalen van een website met cookies
Om inhoud van een website met cookies op te halen, gebruikt u de optie -b:
curl -b cookies.txt https://www.example.com
Met deze opdracht wordt de inhoud van www.example.com opgehaald met behulp van de cookies die zijn opgeslagen in cookies.txt.
Voorbeeld 27: Inhoud ophalen van een website met aangepaste headers
Om inhoud van een website met aangepaste headers op te halen, gebruikt u de optie -H:
curl -H "Custom-Header: Value" https://www.example.com
Voorbeeld 28: Inhoud ophalen van een website met een time-out
Om inhoud van een website met een time-out op te halen, gebruikt u de optie -m:
curl -m 10 https://www.example.com
Met deze opdracht wordt de inhoud van www.example.com opgehaald met een time-out van 10 seconden.
Voorbeeld 29: Inhoud ophalen van een website in uitgebreide modus
Om inhoud van een website in de uitgebreide modus op te halen, gebruikt u de optie -v:
curl -v https://www.example.com
Met deze opdracht wordt de inhoud van www.example.com in uitgebreide modus opgehaald, waarbij gedetailleerde informatie over het verzoek en het antwoord wordt weergegeven.
Voorbeeld 30: Inhoud ophalen van een website en de voortgangsmeter weergeven
Om inhoud van een website op te halen en de voortgangsmeter weer te geven, gebruikt u de optie -#:
curl -# https://www.example.com
Met deze opdracht wordt de inhoud opgehaald van www.example.com en wordt de voortgangsmeter weergegeven.
Conclusie
Als u de opdracht cURL onder de knie krijgt met deze praktische voorbeelden, kunt u uw mogelijkheden om met webservices te communiceren aanzienlijk vergroten, gegevensoverdrachten automatiseren en netwerkproblemen oplossen. Regelmatig oefenen met verschillende cURL-opties en -opdrachten zal uw begrip verdiepen en u in staat stellen het volledige potentieel ervan in uw Linux-workflows te benutten. Geniet van de veelzijdigheid en efficiëntie die cURL met zich meebrengt voor uw opdrachtregeltoolkit.