Exécutez les commandes cURL à partir de la console Windows


380

Existe-t-il un moyen d'installer cURL dans Windows afin d'exécuter des commandes cURL à partir de l'invite de commande?


4
et puis il y a toujours vbscript / powershell stackoverflow.com/questions/204759/http-get-in-vbs
Kalpesh Soni

ma boucle est installée dans xampp et est activée, puis-je la faire fonctionner dans windows cmd?
Master Yoda

1
J'ai remarqué que la même question a été publiée sur SuperUser ici: superuser.com/questions/134685/…
Simon East

4
À partir de mai 2018, avec Windows 10 build 1803, vous pouvez exécuter curl directement à partir de la console Windows: stackoverflow.com/a/50200838/6309
VonC

1
en fait, curl a été inclus depuis la génération d'
phuclv

Réponses:


449

Si vous n'êtes pas amateur de Cygwin , vous pouvez utiliser des versions natives de Windows. Certains sont ici: curl Download Wizard .


Aussi msys2, que je n'ai pas encore vu mentionné. Vous pourriez l'avoir déjà si vous avez installé Haskell à un moment donné par exemple.
DPM

8
Vous pouvez installer Gitet utiliser le git bash. Intégré après l'installation. (voir réponse ci-dessous).
BRogers

167

Vous devez d'abord télécharger l'exécutable cURL. Pour Windows 64 bits, téléchargez-le à partir d' ici et pour Windows 32 bits à télécharger ici Après cela, enregistrez le curl.exefichier sur votre C:lecteur.

Pour l'utiliser, il suffit d'ouvrir le command promptet de taper:

C:\curl http://someurl.com

1
Zut ouais ça a aidé. Très facile. Merci d'avoir posté.
Adrian Carr

Il est vraiment important d'utiliser "au lieu de" si vous voulez le faire dans Windows :)
chomp

144

Si vous avez Gitinstallé sur Windows, vous pouvez utiliser le GNU Bash.... il est intégré.

/superuser/134685/run-curl-commands-from-windows-console/#483964


3
Cela signifie que vous l'exécuteriez comme vous le feriez sous OSX ou Linux sans utiliser de commandes spéciales btw. Il suffit de démarrer Git Bashet de
reculer

2
Cette réponse a besoin de plus de votes positifs. C'est la voie à suivre pour les utilisateurs à l'aise avec les terminaux Mac ou les distributions Unix.
BigRon

1
Merci :) puisque j'utilise Git principalement de toute façon (quel que soit le système d'exploitation que j'utilise), j'ai besoin que Git Bash soit installé. Je n'aime pas installer des assistants ou des ballonnements supplémentaires. Je ne suis pas non plus un grand fan d'essayer d'utiliser PowerShell pour tout faire dans Windows
BRogers

41

Les personnes qui n'ont pas littéralement besoin de l' curlexécutable, mais qui ont juste besoin, par exemple, de voir ou d'enregistrer les résultats d'une demande GET de temps en temps, peuvent utiliser powershelldirectement. À partir d'une invite de commande normale, tapez:

powershell -Command "(new-object net.webclient).DownloadString('http://example.com')"

qui, bien qu'un peu verbeux, est similaire à la frappe

curl http://example.com/

dans un environnement plus Unix.

Plus d'informations sur net.webclientsont disponibles ici: Méthodes WebClient (System.Net) .

MISE À JOUR: J'aime la façon dont ImranHafeez est allé plus loin dans cette réponse . Je préférerais cependant un script cmd plus simple, peut-être en créant un curl.cmdfichier contenant ceci:

@powershell -Command "(new-object net.webclient).DownloadString('%1')"

qui pourrait être appelé comme l'exemple Unix-ish ci-dessus:

curl http://example.com/

Les informations d'identification peuvent être fournies à powershell -Command "$wc=new-object net.webclient;$wc.Credentials=new-object System.Net.NetworkCredential(%user%,%pass%);$wc.DownloadString('%input%')"partir de stackoverflow.com/a/509394/4985705
Max

AVERTISSEMENT: cela ne transmet PAS les paramètres GET à la page. Je l'ai utilisé avec une page PHP. curl https://www.example.com/mypage.php?action=hello. Dans le script mypage.php, $_GET['action']est vide
Stephen R

25

Si vous utilisez le gestionnaire de packages Chocolatey , vous pouvez installer cURL en exécutant cette commande à partir de la ligne de commande ou de PowerShell:

choco install curl

10

Créez un fichier batch dans Windows et profitez de cURL dans Windows :)

@echo off
echo You are about to use windows cURL, Enter your url after curl command below:
set /p input="curl "
cls
echo %input%
powershell -Command "(new-object net.webclient).DownloadString('%input%')"
pause

7
  1. Visitez la page de téléchargement https://curl.haxx.se/download.html - c'est incroyable
  2. Choisissez votre système dans la liste
  3. N'oubliez pas le support SSL, c'est évident maintenant, par exemple pour https
  4. Déballer curl.exeet .crtàC:\Windows\System32
  5. Redémarrez cmd
  6. Prendre plaisir > curl https://api.stackexchange.com

ps Si vous voulez qu'un autre dossier stocke l'exécutable, vérifiez vos chemins > echo %PATH%


6

cela devrait parfaitement fonctionner si vous le téléchargez à partir de - http://curl.haxx.se/dlwiz/?type=bin&os=Win64&flav=MinGW64 - POUR 64BIT Win7 / XP OU à partir de http: //curl.haxx. se / dlwiz /? type = bin & os = Win32 & flav = - & ver = 2000% 2FXP --- POUR 32BIT Win7 / XP il suffit d'extraire les fichiers vers c: / Windows et de les exécuter depuis cmd

C:\Users\WaQas>curl -v google.com
* About to connect() to google.com port 80 (#0)
*   Trying 173.194.35.105...
* connected
* Connected to google.com (173.194.35.105) port 80 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.28.1
> Host: google.com
> Accept: */*
>
* HTTP 1.0, assume close after body
< HTTP/1.0 301 Moved Permanently
< Location: http://www.google.com/
< Content-Type: text/html; charset=UTF-8
< Date: Tue, 05 Feb 2013 00:50:57 GMT
< Expires: Thu, 07 Mar 2013 00:50:57 GMT
< Cache-Control: public, max-age=2592000
< Server: gws
< Content-Length: 219
< X-XSS-Protection: 1; mode=block
< X-Frame-Options: SAMEORIGIN
< X-Cache: MISS from LHR-CacheMARA3
< X-Cache-Lookup: HIT from LHR-CacheMARA3:64003
< Connection: close
<
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="http://www.google.com/">here</A>.
</BODY></HTML>
* Closing connection #0


3

J'ai également constaté que si je place le bac cygwin sur mon chemin Windows, je peux exécuter curl à partir d'une ligne de commande Windows. Il vous donnera également accès à des choses comme ls et grep


Vous pouvez faire plus que cela si les binaires appropriés se trouvent dans le répertoire Cygwin / bin! Vous pouvez même appeler les options de compilation de gcc, make, zip, lynx, etc. le fichier batch Cygwin. Cependant, assurez-vous que dans la propriété de votre système pour les variables d'environnement sous chemin, vous définissez le chemin sur Cygwin64 / bin /. Vous pouvez maintenant utiliser les binaires Unix pour exécuter dans cmd.
Francis Cugler

3

J'ai pu utiliser ce site pour télécharger et installer facilement curl sur ma machine Windows. Cela a pris 30 secondes. J'utilise Windows 7 (avec privilèges administrateur), j'ai donc téléchargé curl-7.37.0-win64.msi depuis http://curl.haxx.se/download.html .

N'oubliez pas non plus de redémarrer votre console / terminal après avoir installé curl, sinon vous obtiendrez les mêmes messages d'erreur.


3

En supposant que vous êtes nouveau dans le jeu ou que vous ne pouvez pas installer de logiciel en raison de restrictions de sécurité, vous pouvez utiliser Scoop pour installer curl. À partir d'un PowerShell ou d'une fenêtre de commande, exécutez les commandes suivantes. Notez que cela suppose que vous disposez de Powershell v3.0 +.

L'autre avantage intéressant ici est que cela installe le logiciel uniquement pour l'utilisateur actuel.

  1. Définir une exception d'exécution

    Set-ExecutionPolicy -ExecutionPolicy Undefined -Scope CurrentUser
    
  2. Installer Scoop

    iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
    
  3. Installez curl. Vous pouvez voir un avertissement concernant un hachage manquant, mais vous devriez voir un message final indiquant que cURL a été installé avec succès

    scoop install curl
    
  4. Testez l'installation de curl

    curl -L https://get.scoop.sh
    

1
Cela avait la réponse que je cherchais cachée à la vue! iex (new-object net.webclient).downloadstring('https://a.url.here')pour télécharger et exécuter un script PS était exactement ce dont j'avais besoin.
Vous voyez peut

3

À partir de l'invite de commandes Windows, exécutez curl via Git Bash

"C:\\Users\\sizu\\AppData\\Local\\Programs\\Git\\bin\\sh.exe" --login -i -c "curl https://www.google.com"

2
  1. Aller à l' assistant de téléchargement curl
  2. Sélectionnez l'exécutable curl
  3. Sélectionnez Win32 ou Win64
  4. Sélectionnez ensuite le package correspondant (par exemple générique / cygwin) selon vos besoins
  5. Ensuite, vous devrez sélectionner la version. Vous pouvez sélectionner non spécifié.
  6. Cela vous amènera directement au lien de téléchargement qui, en un clic, vous donnera une fenêtre contextuelle pour télécharger le fichier zip.
  7. Extrayez le zip pour obtenir l'exécutable. Ajoutez ce dossier dans vos variables d'environnement et vous avez terminé. Vous pouvez ensuite exécuter la commande curl à partir de cmd.

2

Téléchargez le fichier .exe à partir de https://cygwin.com/install.html pour cygwin (une grande collection d'outils GNU et Open Source qui fournissent des fonctionnalités similaires à une distribution Linux sur Windows).

Exécutez le fichier .exe.

Lors de l'installation, vous obtiendrez une étape pour sélectionner les packages. Dans la fenêtre de sélection du package -> changez la vue en "Non installé" et recherchez curl. cliquez sur les packages nécessaires à installer en cliquant sur la colonne "nouveau" du package -> vous pouvez voir le numéro de version puis cliquez sur suivant. (voir l'image ci-dessous)entrez la description de l'image ici

Après avoir terminé l'installation, cliquez sur le cygwin pour ouvrir la console curl sur les fenêtres et travailler sur les commandes curl.


Pourquoi avez-vous besoin de cela s'il y a plusieurs réponses avec une approche plus simple?
Nico Haase

2
@NicoHaase Le simple fait qu'une réponse soit différente ne la rend pas nécessairement fausse. SO devrait être des réponses, pas seulement ce que la foule est d' avis que la meilleure réponse ... il est parfois pas. Je l'ai utilisé et lui ai donné un +1 car c'est la façon actuelle de l'installer.
ΩmegaMan

1
@NicoHaase Si vous êtes situé au point A sur un triangle et que les points B et C sont à la même distance du point A. Vous demandez à quelqu'un de se rendre au hasard au point B ou C en premier, puis de revenir au point A mais pas à partir du même chemin que vous venez de parcourir. Quelle réponse est correcte: ABCA ou ACBA? Comme vous pouvez le voir, il y a plus d'une réponse valide et les deux valent la même chose dans le cours ou le chemin suivi!
Francis Cugler

2

Je suis peut-être un peu en retard pour cela, mais je suis en mesure de résoudre mon problème de boucle à cmd pour Windows 10.

J'ai reçu l'aide du didacticiel vidéo ci-dessous https://www.youtube.com/watch?v=qlTVMuONazs

Voici quelques explications

Étape 1: accédez à https://curl.haxx.se/download.html

Étape 2: Recherchez «Win64 - Generic» et téléchargez «Win64 x86_64 7zip» par «Darren Owen»

Étape 3: décompressez le fichier de téléchargement et installez le certificat "ca-bundle.crt" ne touchez pas curl.exe

Étape 4: dans les fenêtres, allez dans "Panneau de configuration" -> "Système" -> "Paramètres système avancés" Étape 5: cliquez sur les variables d'environnement

Étape 6: Dans la variable système, cliquez sur "Chemin" et collez le chemin du dossier de fichiers dans mon cas, c'est "C: \ curl \ curl_7_53_1_openssl_nghttp2_x64"

Et vous avez terminé.

N'oubliez pas de redémarrer votre système une fois


1

Installez la ligne de commande git à partir d' ici . Lorsque vous installez git dans Windows, vous serez automatiquement bouclé avec. Vous pouvez vérifier la version installée de curl en utilisant curl --versioncomme ceci.

entrez la description de l'image ici

Il s'agit d'un exemple de demande de boucle qui envoie une chaîne dans un objet JSON et la fait encoder.

curl https://api.base62.io/encode \ --request POST \ --header "Content-Type: application/json" \ --data '{ "data": "Hello world!" }'

entrez la description de l'image ici


alors comment appeler git-bash-curl directement depuis cmd / powershell?
gek

1

Réponse la plus simple:

(1) Téléchargez le binaire curl ici: https://curl.haxx.se/download.html (voir le binaire pour votre système d'exploitation). Exemple:

Choisissez 64 bits ou 32 bits après avoir cliqué

(2) Créez un dossier "C: \ curl" puis décompressez-le

Voir le fichier .crt, c'est le certificat SSL qui vient déjà avec le paquet curl

(3) Modifiez la variable système appelée "Path" en ajoutant "; C: \ curl \ bin" à la fin. Fini.

entrez la description de l'image ici

Obs.: J'ai vu des gars dire d'ajouter "; C: \ curl" mais de cette façon, il n'est pas possible d'accéder à curl.exe .


1

Avec Windows 10 Insider build 17063 curl est disponible dans le cmd et le powershell depuis début 2018.


0

Pour tous ceux qui recherchent une solution rapide, après avoir installé cygwin en standard mais découvert que curl ne fonctionnait pas sur une plate-forme win 10 x64:

Téléchargement de ce référentiel retiré, extraction et exécution:

git-cmd.bat

A fonctionné comme un charme. Je suppose qu'il a l'option pré-installée pour curl.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.