ChatGPT解决这个技术问题 Extra ChatGPT

Run cURL commands from Windows console

Is there a way to install cURL in Windows in order to run cURL commands from the command prompt?

and then there is always vbscript / powershell stackoverflow.com/questions/204759/http-get-in-vbs
my curl is installed in xampp and is enable , can i make it work in windows cmd ?
I noticed the same question was posted on SuperUser here: superuser.com/questions/134685/…
Starting May 2018, with Windows 10 build 1803, you can run curl directly from Windows console: stackoverflow.com/a/50200838/6309
actually curl was included since insider build 17063 onwards

j
joshmcode

If you are not into Cygwin, you can use native Windows builds. Some are here: curl Download Wizard.


Also msys2, which I didn't see mentioned yet. You might have it already if you installed Haskell at some point for example.
You can install Git and use the git bash. Built-in after install. (see answer below).
This is outdated, see answer stackoverflow.com/a/61384072/4385330 . In newer windows versions the curl command is available in PowerShell
D
Daniel Stenberg

First you need to download the cURL executable. For Windows 64bit, download it from here and for Windows 32bit download from here After that, save the curl.exe file on your C: drive.

To use it, just open the command prompt and type in:

C:\curl http://someurl.com

Heck yeah that helped. Very easy. Thanks for posting.
It's really important to use " instead of ' if you are going to do it in Windows :)
@Ricardo Sanchez , can we pass number of request call per second ? My Requirement is I need to hit URL 5 times in each second in windows OS.
C
Community

If you have Git installed on windows you can use the GNU Bash.... it's built in.

https://superuser.com/questions/134685/run-curl-commands-from-windows-console/#483964


This means that you would run it just like you would from OSX or Linux without using special commands btw. Just start the Git Bash and cURL away :)
This answer needs more upvotes. This is the way to go for users comfortable with mac terminal or unix distributions.
Thank you :) since I use Git primarily anyway (regardless of the OS I'm using) I need the Git Bash installed. I don't like installing wizards or extra bloat. I'm also not a big fan of trying to use PowerShell to do everything in windows
C
Community

Folks that don't literally need the curl executable, but rather just need to e.g. see or save the results of a GET request now and again, can use powershell directly. From a normal command prompt, type:

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

which, while a bit wordy, is similar to typing

curl http://example.com/

in a more Unix-ish environment.

More information about net.webclient is available here: WebClient Methods (System.Net).

UPDATE: I like how ImranHafeez took this one step further in this answer. I'd prefer a simpler cmd-script however, maybe creating a curl.cmd file containing this:

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

which could be called just like the Unix-ish example above:

curl http://example.com/

Credentials may be given powershell -Command "$wc=new-object net.webclient;$wc.Credentials=new-object System.Net.NetworkCredential(%user%,%pass%);$wc.DownloadString('%input%')" from stackoverflow.com/a/509394/4985705
WARNING: This does NOT pass GET parameters to the page. I used this with a PHP page. curl https://www.example.com/mypage.php?action=hello. In the mypage.php script, $_GET['action'] is empty
Modern windows installations have curl built in now. Try that before trying to implement it via powershell.
H
Helen

If you use the Chocolatey package manager, you can install cURL by running this command from the command line or from PowerShell:

choco install curl

V
Vasfed

Create batch file in windows and enjoy with cURL in 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

J
Jojo

With Windows 10 Insider build 17063 curl is available in the cmd and powershell since early 2018.


v
vladkras

Visit download page https://curl.haxx.se/download.html - it's incredible Choose your sytem in list Don't forget SSL support, it's obvious now, e.g. for https Unpack curl.exe and .crt to C:\Windows\System32 Restart cmd Enjoy > curl https://api.stackexchange.com

p.s. If you want another folder to store executable check your paths > echo %PATH%


W
WaQas

it should work perfectly fine if you would download it from --http://curl.haxx.se/dlwiz/?type=bin&os=Win64&flav=MinGW64 -- FOR 64BIT Win7/XP OR from http://curl.haxx.se/dlwiz/?type=bin&os=Win32&flav=-&ver=2000%2FXP --- FOR 32BIT Win7/XP just extract the files to c:/Windows and run it from 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

P
Parthiban

Install Git for windows Then use git bash to run curl commands.


this is a duplicate of this answer: stackoverflow.com/questions/2710748/…
so how to call git-bash-curl directly from cmd/powershell?
W
Wasif

Currently in Windows 10 build 17063 and later, cURL comes by default with windows. Then you don't need to download it and just use curl.exe.


m
maudulus

I was able to use this site to easily download and install curl on my Windows machine. It took all of 30 seconds. I'm using Windows 7 (w/ Admin privelages), so I downloaded curl-7.37.0-win64.msi from http://curl.haxx.se/download.html.

Also, don't forget to restart your console/terminal after you install curl, otherwise you will get the same error messages.


I
Ishara Amarasekera

Install git command line from here. When you install git in windows you will automatically get curl with it. You can check the installed version of curl using curl --version like this.

https://i.stack.imgur.com/KBfkk.jpg

This is a sample curl request which sends a string in a JSON object and get it encoded.

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

https://i.stack.imgur.com/soMca.jpg


so how to call git-bash-curl directly from cmd/powershell?
k
kingd9

I have also found that if I put the cygwin bin on my windows path I can run curl from a windows command line. It also will give you access to things like ls and grep


You can do more than that if the appropriate binaries are in the Cygwin/bin directory! You can even call gcc's compiler options, make, zip, lynx, etc. There are some limitations though, and you would probably want to run windows cmd being elevated to admin privileges, then navigate to your Cygwin or Cygwin64 directory within command prompt then call the Cygwin batch file. However make sure that in your system's property for environment variables under path you set the path to Cygwin64/bin/. Now you can use Unix binaries to run within cmd.
R
Ro Yo Mi

Assuming you are new to the game or are unable to install software because of security restrictions, you could use Scoop to install curl. From a powershell or command window run the following commands. Note this assumes that you have Powershell v3.0+.

The other cool advantage here is that this installs the software for just the current user.

Set execution exception Set-ExecutionPolicy -ExecutionPolicy Undefined -Scope CurrentUser Install Scoop iex (new-object net.webclient).downloadstring('https://get.scoop.sh') Install curl. You may see a warning about a missing hash, but you should see a final message that cURL was installed successfully scoop install curl Test the install of curl curl -L https://get.scoop.sh


This had the answer I was looking for hidden in plain sight! iex (new-object net.webclient).downloadstring('https://a.url.here') to download and run a PS script was just what I needed.
S
Scott Izu

From Windows Command Prompt, run curl through Git Bash

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

A
Aniket Thakur

Go to curl Download Wizard Select curl executable Select Win32 or Win64 Then select package for it(Eg generic/cygwin) as per your requirement Then you will have to select version. You can select unspecified. This will directly take you to download link which on click will give you popup to download the zip file. Extract the zip to get the executable. Add this folder in your environment variables and you are done. You can then execute curl command from cmd.


r
randomguy

Download the .exe file from https://cygwin.com/install.html for cygwin (a large collection of GNU and Open Source tools which provide functionality similar to a Linux distribution on Windows).

Run the .exe file.

https://i.stack.imgur.com/BqIzh.png

After finishing the installation click on the cygwin to open the curl console on windows and work on curl commands.


Why do you need that if there a multiple answers with a more simple approach?
@NicoHaase Just because an answer is different does not make it necessarily wrong. SO should be about answers, not just what the crowd believes is only the best answer...sometimes it is not. I used this and gave it a +1 because it is the current way to install it.
@NicoHaase If you are located at point A on a triangle and points B & C are the same distance from point A. You instruct someone to randomly travel to either point B or C first then to travel back to point A but not from the same path you just previously traveled from. Which answer is correct: ABCA or ACBA? As you can see there are more than one valid answers and both are worth the same in the course or path that was taken!
K
Kamran Sohail

I am may be bit late for this, but I am able to resolve my issue of curl at cmd for windows 10.

I got help from below video tutorial https://www.youtube.com/watch?v=qlTVMuONazs

Here is some explanation

Step 1: go to https://curl.haxx.se/download.html

Step 2: Search "Win64 - Generic" and download "Win64 x86_64 7zip" by "Darren Owen"

Step 3: unzip the download file and install the certificate "ca-bundle.crt" do not touch curl.exe

Step 4: in windows go to "Control Panel" -> "System" -> "Advance system settings " Step 5: click on Envirnoment variables

Step 6: In System variable click on "Path" and paste the path of the file folder in my case it is "C:\curl\curl_7_53_1_openssl_nghttp2_x64"

And you are done.

Don't Forgot to restart you system for one time


D
Davidson Lima

Simplest answer:

(1) Download the curl binary here: https://curl.haxx.se/download.html (see the binary for your OS). Example:

https://i.stack.imgur.com/tzdRk.png

(2) Create a folder "C:\curl" then unzip all there

https://i.stack.imgur.com/j6q6o.png

(3) Edit the system variable called "Path" by adding ";C:\curl\bin" in the end. Finished.

https://i.stack.imgur.com/OCTwz.png

Obs.: I've seen some guys telling to add ";C:\curl" but this way it's not possible to access curl.exe.


a
a.t.

For anyone looking for a quick solution, after having standard installed cygwin but finding out curl did not work on a win 10 x64 platform:

Downloading this retired repository, extracting it and running:

git-cmd.bat

Worked like a charm. I assume it has the pre-installed option for curl.


z
zahra_oveyedzade

I've used MobaXterm and it runs curl command properly.