Startpagina > Netwerkbeheer > curl

curl: HTTP-verzoeken en bestandsoverdracht (stille modus)

`curl` is een krachtig command-line tool voor het verzenden van gegevens via diverse protocollen (HTTP, HTTPS, FTP, etc.). Met name de opties `--silent` of `-s` onderdrukken onnodige uitvoer zoals voortgangsbalken of foutmeldingen, wat handig is voor scripts of geautomatiseerde taken om schone uitvoer te verkrijgen. De door u genoemde `curl-silent` is geen zelfstandig commando, maar verwijst vaak naar het gebruik van het `curl`-commando met de `-s` optie.

Overzicht

`curl` is een veelzijdig hulpprogramma voor communicatie met webservers of voor het downloaden/uploaden van bestanden. De `-s` (of `--silent`) optie minimaliseert de uitvoer door de standaard `curl`-gedrag, zoals voortgangsbalken, foutmeldingen en andere diagnostische informatie, te verbergen. Dit is bijzonder nuttig in scripts voor het ophalen van de inhoud van webpagina's of het verwerken van API-antwoorden.

Belangrijkste Kenmerken

  • Ondersteuning voor diverse protocollen (HTTP, HTTPS, FTP, FTPS, SCP, SFTP, etc.)
  • Downloaden en uploaden van gegevens
  • Ondersteuning voor geavanceerde functies zoals HTTP-headers, cookies, authenticatie
  • Scriptvriendelijke stille modus (`-s` optie)

Belangrijkste Opties

`curl` biedt een breed scala aan opties, maar hier worden de meest gebruikte opties in combinatie met de stille modus (`-s`) geïntroduceerd.

Stille modus en uitvoerbeheer

Verzoekmethoden en gegevens

Gegenereerde opdracht:

Probeer de opdrachtcombinaties.

Uitleg:

`curl` Voer het commando uit.

Combineer deze opties en voer de opdracht virtueel uit met de AI.

Gebruiksvoorbeelden

Voorbeelden van het uitvoeren van diverse netwerktaken met `curl -s`.

Webpagina-inhoud ophalen in stille modus

curl -s https://example.com

Toont de HTML-inhoud van de opgegeven URL op de terminal zonder voortgangsbalk.

Alleen foutmeldingen weergeven bij optreden

curl -sS https://nonexistent.example.com

Geeft niets weer bij normale uitvoering, maar toont foutmeldingen als er een fout optreedt.

Bestand downloaden en opslaan in stille modus

curl -s -o downloaded_file.zip https://example.com/some_file.zip

Downloadt een extern bestand en slaat het op als `downloaded_file.zip`. Er wordt geen voortgang weergegeven.

JSON-gegevens verzenden via POST-verzoek (stille modus)

curl -s -X POST -H "Content-Type: application/json" -d '{"key":"value"}' https://api.example.com/data

Verzendt JSON-gegevens via een HTTP POST-verzoek en ontvangt het antwoord in stille modus.

Redirects volgen en stille modus

curl -sL http://shorturl.at/abcde

Volgt automatisch de nieuwe locatie voor URL's met redirects en haalt het uiteindelijke antwoord op in stille modus.

Tips & Aandachtspunten

Nuttige tips en aandachtspunten bij het gebruik van `curl -s`.

Misvatting over `curl-silent`

`curl-silent` is geen zelfstandig commando, maar een gebruikelijke uitdrukking die `curl -s` betekent. Het direct uitvoeren van een commando genaamd `curl-silent` in scripts, etc., kan leiden tot een 'command not found' foutmelding.

  • Werkelijk commando: `curl -s`
  • Potentiële misvatting: Bestaat van een apart commando genaamd `curl-silent`

Combinatie van `-s` en `-S`

Bij gebruik van `-s` in geautomatiseerde scripts kan het zijn dat er geen uitvoer is, zelfs niet bij fouten, wat probleemoplossing bemoeilijkt. Door de `-S` optie toe te voegen, blijft het stil bij normale uitvoering, maar worden foutmeldingen weergegeven bij fouten, wat zeer nuttig is voor debugging.

  • `curl -s`: Onderdrukt alle uitvoer (inclusief fouten)
  • `curl -sS`: Stil bij normale uitvoering, toont foutmeldingen bij fouten

Controleer de exit-code

`curl` geeft de successtatus van een taak aan met een exit-code. In scripts is het raadzaam om deze code te controleren via de `$?` variabele om fouten af te handelen. `0` betekent succes, andere waarden duiden op specifieke fouten.

Standaard geïnstalleerd

`curl` is standaard geïnstalleerd op de meeste moderne Linux-distributies. Als het niet is geïnstalleerd, kunt u het installeren met commando's zoals `sudo apt install curl` (Debian/Ubuntu) of `sudo yum install curl` (CentOS/RHEL).


Hétzelfde categoriecommando