# [Commandes Linux] Curl

## Introduction

Curl est un outil en ligne de commande qui permet d'effectuer des requêtes HTTP. Il est très souvent utilisé dans les scripts.

[![image.png](https://wiki.neopipe.fr/uploads/images/gallery/2023-12/scaled-1680-/tKpimage.png)](https://wiki.neopipe.fr/uploads/images/gallery/2023-12/tKpimage.png)

## Manuel

#### Syntaxe globale

```bash
curl <URL>
```

<p class="callout info">Sans option, curl affiche le code source de la page.</p>

#### Options

<table border="1" id="bkmrk-options-descriptions" style="border-collapse: collapse; width: 100%; height: 331.563px;"><colgroup><col style="width: 50%;"></col><col style="width: 50%;"></col></colgroup><tbody><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">**Options**</td><td class="align-center" style="height: 29.7969px;">**Descriptions**</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">-O</td><td class="align-center" style="height: 29.7969px;">Téléchargement d'un fichier en utilisant le nom distant.</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">-o &lt;output&gt;</td><td class="align-center" style="height: 29.7969px;">Téléchargement d'un fichier en utilisant un nom spécifique.</td></tr><tr style="height: 46.5938px;"><td class="align-center" style="height: 46.5938px;">-X &lt;GET|POST&gt; -d "&lt;PARAM1&gt;=&lt;VALUE1&gt;;&lt;PARAM2&gt;=&lt;VALUE2&gt;"</td><td class="align-center" style="height: 46.5938px;">Envoi de données via une requête GET ou POST.</td></tr><tr><td class="align-center">-X OPTIONS</td><td class="align-center">Permet d'afficher les méthodes disponibles.</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">-L</td><td class="align-center" style="height: 29.7969px;">Suit les redirections.</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">-k</td><td class="align-center" style="height: 29.7969px;">Ignore les vérifications SSL.</td></tr><tr style="height: 46.5938px;"><td class="align-center" style="height: 46.5938px;">-#</td><td class="align-center" style="height: 46.5938px;">Affichage de la progression du téléchargement (à combiner avec le -O).</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">-s</td><td class="align-center" style="height: 29.7969px;">Active le mode silencieux (verbeux par défaut).</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">-h "&lt;HEADER&gt;"  
</td><td class="align-center" style="height: 29.7969px;">Ajoute un header.  
</td></tr><tr style="height: 29.7969px;"><td class="align-center" style="height: 29.7969px;">-I</td><td class="align-center" style="height: 29.7969px;">Affiche la bannière.</td></tr><tr><td class="align-center">-T &lt;FILE&gt;</td><td class="align-center">Permet d'upload un fichier (si autorisé).</td></tr><tr><td class="align-center">-sSk &lt;LINK&gt; | bash</td><td class="align-center">Télécharge un script et l'exécute directement.</td></tr></tbody></table>

#### Afficher son IP publique

```bash
curl -4 ifconfig.me
```