La commande curl (pour client URL) est l’outil de référence pour transférer des données depuis ou vers un serveur. Elle supporte une quantité impressionnante de protocoles (HTTP, HTTPS, FTP, SFTP, etc.).
Pour vous, c’est le “couteau suisse” pour interagir avec des API, tester la disponibilité de vos plateformes LMS ou télécharger des fichiers sans interface graphique.
1. le concept de base
curl permet de simuler le comportement d’un navigateur web, mais en ligne de commande. Il envoie une requête à une URL et affiche la réponse du serveur (souvent du code HTML ou du JSON).
2. les options essentielles
| option | commande | description |
| télécharger | curl -O [url] | télécharge le fichier et garde son nom d’origine. |
| renommer | curl -o [nom] [url] | télécharge le fichier et lui donne le nom de votre choix. |
| en-têtes | curl -I [url] | affiche uniquement l’en-tête (utile pour vérifier un code 200 OK ou 404). |
| données | curl -d "[données]" | envoie des données via une requête POST (très utilisé pour les API). |
| silencieux | curl -s [url] | mode “silent” : n’affiche pas la barre de progression (idéal pour les scripts). |
| suivre | curl -L [url] | suit les redirections (si le site a changé d’adresse). |
3. exemples concrets d’utilisation
vérifier si un centre de formation est en ligne
Si vous voulez tester rapidement la réponse de votre serveur sans ouvrir un navigateur :
curl -I [https://lms.edu-jalm.com](https://lms.edu-jalm.com)
interagir avec une API (exemple POST)
Pour envoyer des informations à un service web (comme créer un utilisateur dans votre LMS via API) :
curl -X POST -d "user=jean&action=create" [https://api.votre-lms.com/v1/users](https://api.votre-lms.com/v1/users)
télécharger un script d’installation
C’est la méthode classique pour installer des outils d’automatisation :
curl -s [https://get.docker.com](https://get.docker.com) | sh
4. comparaison : curl vs wget
| aspect | curl | wget |
| vocation | interaction avec les API et transfert de données. | téléchargement récursif de fichiers et de sites. |
| protocoles | supporte presque tout (plus de 20 protocoles). | principalement HTTP, HTTPS et FTP. |
| complexité | très riche en options pour les développeurs. | plus simple, spécialisé dans la récupération de dossiers. |




