Curl Commande sous Linux avec des Exemples

curl est un utilitaire de ligne de commande pour transférer des données depuis ou vers un serveur conçu pour fonctionner sans intervention de l’utilisateur. Avec curl, vous pouvez télécharger ou télécharger des données en utilisant L’un des protocoles pris en charge, notamment HTTP, HTTPS , SCP , SFTP et FTP . curl fournit un certain nombre d’options vous permettant de reprendre les transferts, de limiter la bande passante, de prendre en charge le proxy, d’authentifier l’utilisateur et bien plus encore.,

dans ce tutoriel, nous allons vous montrer comment utiliser l’outil curl à travers des exemples pratiques et des explications détaillées des options de curl les plus courantes.

installation de Curl #

Le Paquet curl est préinstallé sur la plupart des distributions Linux aujourd’hui.

Pour vérifier si la boucle package est installé sur votre système, ouvrez votre console, tapez curl et appuyez sur entrée. Si vous avez curl installé, le système d’impression curl: try 'curl --help' or 'curl --manual' for more information. Autrement, vous verrez quelque chose comme curl command not found.,

Si curl n’est pas installé, vous pouvez facilement l’installer en utilisant le gestionnaire de paquets de votre distribution.

Installer Curl sur Ubuntu et Debian #

sudo apt updatesudo apt install curl

Installer Curl sur CentOS et Fedora #

sudo yum install curl

Comment Utiliser Curl #

La syntaxe de la balise curl commande est comme suit:

curl 

Dans sa forme la plus simple, quand il est invoqué, sans aucune option, curl affiche la ressource spécifiée sur la sortie standard.,

Par exemple, pour récupérer la balise example.com page d’accueil, vous devez exécuter:

curl example.com

La commande imprimer le code source de la balise example.com page d’accueil dans votre fenêtre de terminal.

Si aucun protocole n’est spécifié, curl essaie de deviner le protocole que vous souhaitez utiliser, et il sera par défaut à HTTP.

Enregistrer le résultat dans un Fichier #

Pour enregistrer le résultat de la balise curl commande, utilisez la balise -o ou -O option.,

en Minuscules -o enregistre le fichier avec un prédéfini nom de fichier, dans l’exemple ci-dessous est vue-v2.6.10.js:

curl -o vue-v2.6.10.js https://cdn.jsdelivr.net/npm/vue/dist/vue.js

Majuscule -O enregistre le fichier avec son nom de fichier d’origine:

curl -O https://cdn.jsdelivr.net/npm/vue/dist/vue.js

Télécharger Plusieurs fichiers #

Pour télécharger plusieurs fichiers à la fois, d’utiliser plusieurs -O options, suivie par l’URL du fichier que vous souhaitez télécharger.,

dans L’exemple suivant, nous téléchargeons les fichiers ISO Arch Linux et Debian:

reprendre un téléchargement #

Vous pouvez reprendre un téléchargement en utilisant l’option -C -. Ceci est utile si votre connexion tombe pendant le téléchargement d’un fichier volumineux, et au lieu de démarrer le téléchargement à partir de zéro, vous pouvez continuer le précédent.

Par exemple, si vous téléchargez Ubuntu 18.,04 fichier iso en utilisant la commande suivante:

curl -O http://releases.ubuntu.com/18.04/ubuntu-18.04-live-server-amd64.iso

et soudainement votre connexion tombe, vous pouvez reprendre le téléchargement avec:

curl -C - -O http://releases.ubuntu.com/18.04/ubuntu-18.04-live-server-amd64.iso

obtenir les en-têtes HTTP d’une URL #

les en-têtes HTTP sont des paires clé-valeur séparées par deux points contenant des informations Les en-têtes sont transmis entre le client et le serveur avec la requête ou la réponse.,il a spécifié la ressource:

curl -I --http2 https://www.ubuntu.com/

testez si un site Web prend en charge HTTP/2 #

pour vérifier si une URL particulière prend en charge le nouveau protocole HTTP/2 , récupérez les en-têtes HTTP avec -Iavec l’option--http2:

curl -I --http2 -s https://linuxize.com/ | grep HTTP

l’option -sindique àcurlde s’exécuter en mode silencieux (silencieux) et de masquer le compteur de progression et les messages d’erreur.,

si le serveur distant prend en charge HTTP/2, curl imprime HTTP/2.0 200:

HTTP/2 200

sinon, la réponse est HTTP/1.1 200:

HTTP/1.1 200 OK

Si vous avez la version Curl 7.47.0 ou plus récente, vous n’avez pas besoin d’utiliser l’option --http2 car HTTP/2 est activé par défaut pour toutes les connexions HTTPS.

Follow Redirects #

par défaut,curl ne suit pas les en-têtes D’emplacement HTTP.,la page vous serez redirigé vers la version www:

curl google.com

l’option -L demande à curl de suivre toute redirection jusqu’à ce qu’elle atteigne la destination finale:

curl -L google.com

changer l’agent utilisateur #

parfois, lors du téléchargement d’un fichier, le serveur distant peut être configuré pour bloquer l’agent utilisateur curl ou pour renvoyer différents contenus en fonction de l’appareil du visiteur et du navigateur.,

dans des situations comme celle-ci pour émuler un navigateur différent, utilisez l’option -A.

Par exemple pour émule Firefox 60, vous devez utiliser:

curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0" https://getfedora.org/

Spécifier un Taux de Transfert Maximum #

Le --limit-rate option vous permet de limiter le taux de transfert de données. La valeur peut être exprimée en octets, en kilo-octets avec le suffixek, en mégaoctets avec le suffixem et en gigaoctets avec le suffixeg.,

Dans l’exemple suivant: curl télécharger l’Aller binaire et de limiter la vitesse de téléchargement à 1 mo:

curl --limit-rate 1m -O https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz

Cette option est utile pour prévenir les curl consommer toute la bande passante disponible.

transférez des fichiers via FTP #

pour accéder à un serveur FTP protégé avec curl, utilisez l’option -u et spécifiez le nom d’utilisateur et le mot de passe comme indiqué ci-dessous:

curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/

ichiers et répertoires dans le répertoire personnel de L’utilisateur.,

Vous pouvez télécharger un seul fichier à partir du serveur FTP à l’aide de la syntaxe suivante:

curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/file.tar.gz

Pour télécharger un fichier vers le serveur FTP, utilisez la balise -T suivi du nom du fichier que vous souhaitez télécharger:

curl -T newfile.tar.gz -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/

Envoyer des « Cookies » #

Parfois, vous devrez peut-être faire une requête HTTP avec les cookies spécifiques pour accéder à une ressource distante ou de déboguer un problème.

par défaut, lors de la demande d’une ressource aveccurl, aucun cookie n’est envoyé ou stocké.,

pour envoyer des cookies au serveur, utilisez le commutateur-b suivi d’un nom de fichier contenant les cookies ou une chaîne.

Par exemple, pour télécharger le fichier Oracle Java JDK rpm jdk-10.0.2_linux-x64_bin.rpm vous devrez passer un cookie nommé oraclelicense avec la valeur a:

en utilisant des Proxies #

curl prend en charge différents types de proxies, y compris HTTP, HTTPS et Socks., Pour transférer des données via un serveur proxy, utilisez la balise -x (--proxy), suivies par l’URL de proxy.,

la commande suivante télécharge la ressource spécifiée à l’aide d’un proxy sur 192.168.44.1 port 8888:

curl -x 192.168.44.1:8888 http://linux.com/

si le serveur proxy nécessite une authentification, utilisez le -U (--proxy-user) option suivie du nom d’utilisateur et du mot de passe séparés par deux points (user:password):

curl -U username:password -x 192.168.44.1:8888 http://linux.com/

conclusion #

curl est un outil de ligne de commande qui vous permet de transférer des données depuis ou vers un hôte distant., Il est utile pour résoudre les problèmes, télécharger des fichiers, et plus encore.

Les exemples présentés dans ce tutoriel sont simples, mais montrent les options curlles plus utilisées et sont destinés à vous aider à comprendre le fonctionnement de la commande curl.

pour plus d’informations surcurl visitez la page de Documentation Curl.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *