Table des matières

Qu'est-ce que cURL et que fait-il ?

cURL est un outil permettant de transférer des données depuis ou vers un serveur, en utilisant l’un des nombreux protocoles pris en charge (HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP ou FILE).

Cet outil est conçu pour fonctionner sans interaction de l'utilisateur, ce qui le rend excellent pour l'automatisation. Il offre un support proxy, l’authentification des utilisateurs, le téléchargement FTP, la publication HTTP, les connexions SSL, les cookies, la reprise du transfert de fichiers, Metalink et de nombreuses autres fonctionnalités répertoriées ci-dessous.

cURL peut être utilisé de nombreuses manières différentes et intéressantes. Avec cet outil, vous pouvez télécharger et gérer des fichiers, vérifier votre adresse e-mail, ou même mettre à jour votre statut sur certains sites de médias sociaux, et même consulter la météo à l'extérieur. Dans cet article, nous aborderons cinq des utilisations les plus utiles et les plus élémentaires de l’outil cURL sur n'importe quelle système Linux.

Vérifier une URL

Une des utilisations les plus courantes et les plus simples de cURL est de taper la commande elle-même, suivie de l'URL que vous souhaitez vérifier:

user@live:~$ curl https://domain.com/

Cette commande affichera le contenu de l'URL sur votre terminal.

Sauvegarder le contenu d'une URL dans un fichier

La sortie d'une commande cURL peut être facilement sauvegardée dans un fichier en ajoutant l'option -o à la commande, comme indiqué ci-dessous:

user@live:~$ curl -o website https://domain.com/
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current 
Dload  Upload   Total   Spent    Left  Speed 
100 41793    0 41793    0     0   275k      0 --:--:-- --:--:-- --:--:--  2.9M 

Dans cet exemple, la sortie sera enregistrée dans un fichier nommé “website” dans le répertoire de travail en cours. Vous pouvez enregistrer dans d'autres répertoires en utilisant la même méthode que d'autres programmes en utilisant des barres obliques.

Télécharger des fichiers

Vous pouvez télécharger des fichiers avec cURL en ajoutant l’option -O à la commande. Il est utilisé pour enregistrer des fichiers sur le serveur local avec les mêmes noms que sur le serveur distant :

user@live:~$ curl -O https://domain.com/file.zip 

Dans cet exemple, l’archive zip “file.zip” sera téléchargée dans le répertoire de travail en cours. Vous pouvez également télécharger le fichier sous un nom différent en ajoutant l'option -o à cURL :

user@live:~$ curl -o archive.zip https://domain.com/file.zip

De cette façon, l’archive “file.zip” sera téléchargée et enregistrée sous le nom “archive.zip”.

cURL peut également être utilisé pour télécharger plusieurs fichiers simultanément, comme illustré dans l'exemple ci-dessous :

user@live:~$ curl -O https://domain.com/file.zip -O https://domain.com/file2.zip 

cURL peut également être utilisé pour télécharger des fichiers en toute sécurité via SSH à l'aide de la commande suivante :

user@live:~$ curl -u user sftp://server.domain.com/path/to/file 

Notez que vous devez utiliser le chemin d'accès complet du fichier que vous souhaitez télécharger.

Obtenir les informations d'en-tête HTTP d'un site Web

Vous pouvez facilement obtenir les informations d’en-tête HTTP à partir du site Web de votre choix en ajoutant l’option -I (“i” majuscule) à cURL.

user@live:~$ curl -I http://domain.com
HTTP/1.1 200 OK 
Date: Sun, 16 Oct 2016 23:37:15 GMT 
Server: Apache/2.4.23 (Unix) 
X-Powered-By: PHP/5.6.24 
Connection: close 
Content-Type: text/html; charset=UTF-8 

Accéder à un serveur FTP

Pour accéder à votre serveur FTP avec cURL, utilisez la commande suivante :

user@live:~$ curl ftp://ftp.domain.com --user username:password 

cURL se connecte au serveur FTP et répertorie tous les fichiers et répertoires du répertoire de base de l’utilisateur. Vous pouvez également télécharger des fichiers via FTP :

user@live:~$ curl ftp://ftp.domain.com/filename.extension --user username:password 

et télécharger un fichier sur le serveur FTP :

user@live:~$ curl -T filename.extension ftp://ftp.domain.com/ --user username:password 

Man

Vous pouvez également consulter la page de manuel cURL pour voir toutes les options et fonctions cURL disponibles :

user@live:~$ man curl

Cela couvre la plupart des commandes et fonctionnalités de base que la plupart des nouveaux utilisateurs de cURL voudraient utiliser. Bien entendu, les fonctionnalités de cURL sont bien plus vastes que ce guide, la plupart des fonctionnalités étant destinées aux utilisateurs expérimentés.