Chạy các lệnh cURL từ bảng điều khiển Windows


380

Có cách nào để cài đặt cURL trong Windows để chạy các lệnh cURL từ dấu nhắc lệnh không?


4
và sau đó luôn có vbscript / powershell stackoverflow.com/questions/204759/http-get-in-vbs
Kalpesh Soni

curl của tôi được cài đặt trong xampp và được kích hoạt, tôi có thể làm cho nó hoạt động trong windows cmd không?
Thầy Yoda

1
Tôi nhận thấy câu hỏi tương tự đã được đăng trên SuperUser tại đây: superuser.com/questions/134685/iêu
Simon East

4
Bắt đầu từ tháng 5 năm 2018, với Windows 10 build 1803, bạn có thể chạy curl trực tiếp từ bảng điều khiển Windows: stackoverflow.com/a/50200838/6309
VonC

1
thực sự curl đã được bao gồm kể từ khi người trong cuộc xây dựng 17063 trở đi
phuclv

Câu trả lời:


449

Nếu bạn không vào Cygwin , bạn có thể sử dụng các bản dựng Windows gốc. Một số ở đây: curl Download Wizard .


Ngoài ra msys2, mà tôi chưa thấy đề cập đến. Bạn có thể đã có nó nếu bạn đã cài đặt Haskell tại một số điểm chẳng hạn.
DPM

8
Bạn có thể cài đặt Gitvà sử dụng git bash. Tích hợp sau khi cài đặt. (xem câu trả lời dưới đây).
BRogers

167

Trước tiên, bạn cần tải về tệp thực thi cURL. Đối với Windows 64bit, hãy tải xuống từ đây và cho Windows 32bit tải xuống từ đây Sau đó, hãy lưu curl.exetệp trên C:ổ đĩa của bạn .

Để sử dụng nó, chỉ cần mở command promptvà gõ vào:

C:\curl http://someurl.com

1
Heck yeah đã giúp. Rất dễ. Cảm ơn vì đăng.
Adrian Carr

Đó là thực sự quan trọng để sử dụng "thay vì" nếu bạn đang đi để làm điều đó trong Windows :)
chomp

144

Nếu bạn đã Gitcài đặt trên windows, bạn có thể sử dụng GNU Bash.... nó được tích hợp sẵn.

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


3
Điều này có nghĩa là bạn sẽ chạy nó giống như bạn làm từ OSX hoặc Linux mà không cần sử dụng các lệnh đặc biệt btw. Chỉ cần bắt đầu Git Bashvà cURL đi :)
BRogers

2
Câu trả lời này cần nhiều upvote hơn. Đây là cách giúp người dùng thoải mái với các thiết bị đầu cuối mac hoặc unix.
BigRon

1
Cảm ơn bạn :) vì dù sao tôi cũng sử dụng Git (bất kể hệ điều hành nào tôi đang sử dụng) Tôi cần cài đặt Git Bash. Tôi không thích cài đặt trình hướng dẫn hoặc phình to thêm. Tôi cũng không phải là một fan hâm mộ lớn của việc cố gắng sử dụng PowerShell để làm mọi thứ trong windows
BRogers

41

Những người không thực sự cần curlthực thi, nhưng chỉ cần xem hoặc lưu kết quả của yêu cầu GET ngay bây giờ và có thể sử dụng powershelltrực tiếp. Từ một dấu nhắc lệnh bình thường, gõ:

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

trong đó, một chút dài dòng, tương tự như gõ

curl http://example.com/

trong một môi trường Unix-ish hơn.

Thông tin thêm về net.webclientcó sẵn ở đây: Phương pháp WebClient (System.Net) .

CẬP NHẬT: Tôi thích cách ImranHafeez tiến thêm một bước trong câu trả lời này . Tuy nhiên, tôi thích một tập lệnh cmd đơn giản hơn, có thể tạo một curl.cmdtệp chứa tệp này:

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

có thể được gọi giống như ví dụ Unix-ish ở trên:

curl http://example.com/

Thông tin có thể được cung cấp powershell -Command "$wc=new-object net.webclient;$wc.Credentials=new-object System.Net.NetworkCredential(%user%,%pass%);$wc.DownloadString('%input%')"từ stackoverflow.com/a/509394/4985705
Tối đa

CẢNH BÁO: Điều này KHÔNG truyền tham số GET cho trang. Tôi đã sử dụng điều này với một trang PHP. curl https://www.example.com/mypage.php?action=hello. Trong tập lệnh mypage.php, $_GET['action']trống
Stephen R

25

Nếu bạn sử dụng trình quản lý gói Chocolatey , bạn có thể cài đặt cURL bằng cách chạy lệnh này từ dòng lệnh hoặc từ PowerShell:

choco install curl

10

Tạo tập tin bó trong windows và thưởng thức với cURL trong 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. Truy cập trang tải xuống https://curl.haxx.se/doad.html - thật không thể tin được
  2. Chọn sytem của bạn trong danh sách
  3. Đừng quên hỗ trợ SSL, giờ đây rõ ràng, ví dụ như cho https
  4. Giải nén curl.exe.crtđểC:\Windows\System32
  5. Khởi động lại cmd
  6. Thưởng thức > curl https://api.stackexchange.com

ps Nếu bạn muốn một thư mục khác để lưu trữ thực thi, hãy kiểm tra đường dẫn của bạn > echo %PATH%


6

nó sẽ hoạt động hoàn toàn tốt nếu bạn tải xuống từ - http://curl.haxx.se/dlwiz/?type=bin&os=Win64&flav=MinGW64 - CHO 64BIT Win7 / XP HOẶC từ http: //curl.haxx. se / dlwiz /? type = bin & os = Win32 & flav = - & ver = 2000% 2FXP --- CHO 32BIT Win7 / XP chỉ cần giải nén các tệp vào c: / Windows và chạy nó từ 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

Tôi cũng đã thấy rằng nếu tôi đặt thùng cygwin trên đường dẫn windows thì tôi có thể chạy curl từ dòng lệnh windows. Nó cũng sẽ cung cấp cho bạn quyền truy cập vào những thứ như ls và grep


Bạn có thể làm nhiều hơn thế nếu các nhị phân thích hợp nằm trong thư mục Cygwin / bin! Bạn thậm chí có thể gọi các tùy chọn trình biên dịch của gcc, make, zip, lynx, v.v. Tuy nhiên, có một số hạn chế và bạn có thể muốn chạy windows cmd được nâng lên thành đặc quyền quản trị viên, sau đó điều hướng đến thư mục Cygwin hoặc Cygwin64 trong dấu nhắc lệnh sau đó gọi tệp bó Cygwin. Tuy nhiên, hãy đảm bảo rằng trong thuộc tính hệ thống của bạn cho các biến môi trường theo đường dẫn, bạn đặt đường dẫn thành Cygwin64 / bin /. Bây giờ bạn có thể sử dụng mã nhị phân Unix để chạy trong cmd.
Francis Cugler

3

Tôi đã có thể sử dụng trang web này để dễ dàng tải xuống và cài đặt curl trên máy Windows của mình. Phải mất tất cả 30 giây. Tôi đang sử dụng Windows 7 (w / Admin private), vì vậy tôi đã tải xuống curl-7.37.0-win64.msi từ http://curl.haxx.se/doad.html .

Ngoài ra, đừng quên khởi động lại bàn điều khiển / thiết bị đầu cuối của bạn sau khi bạn cài đặt curl, nếu không bạn sẽ nhận được thông báo lỗi tương tự.


3

Giả sử bạn chưa quen với trò chơi hoặc không thể cài đặt phần mềm vì hạn chế bảo mật, bạn có thể sử dụng Scoop để cài đặt curl. Từ một cửa sổ powershell hoặc lệnh chạy các lệnh sau. Lưu ý điều này giả định rằng bạn có Powershell v3.0 +.

Ưu điểm thú vị khác ở đây là phần mềm này chỉ cài đặt phần mềm cho người dùng hiện tại.

  1. Đặt ngoại lệ thực thi

    Set-ExecutionPolicy -ExecutionPolicy Undefined -Scope CurrentUser
    
  2. Cài đặt muỗng

    iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
    
  3. Cài đặt curl. Bạn có thể thấy cảnh báo về một hàm băm bị thiếu, nhưng bạn sẽ thấy một thông báo cuối cùng rằng cURL đã được cài đặt thành công

    scoop install curl
    
  4. Kiểm tra cài đặt curl

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

1
Điều này đã có câu trả lời tôi đang tìm kiếm ẩn trong tầm nhìn rõ ràng! iex (new-object net.webclient).downloadstring('https://a.url.here')để tải xuống và chạy tập lệnh PS là thứ tôi cần.
Có lẽ bạn thấy tên này.

3

Từ Windows Command Prompt, chạy curl qua Git Bash

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

2
  1. Chuyển đến Curl Tải xuống Wizard
  2. Chọn curl thực thi
  3. Chọn Win32 hoặc Win64
  4. Sau đó chọn gói cho nó (Ví dụ: generic / cygwin) theo yêu cầu của bạn
  5. Sau đó, bạn sẽ phải chọn phiên bản. Bạn có thể chọn không xác định.
  6. Điều này sẽ trực tiếp đưa bạn đến liên kết tải xuống mà khi nhấp sẽ cung cấp cho bạn cửa sổ bật lên để tải xuống tệp zip.
  7. Giải nén zip để có được thực thi. Thêm thư mục này trong các biến môi trường của bạn và bạn đã hoàn tất. Sau đó bạn có thể thực hiện lệnh curl từ cmd.

2

Tải xuống tệp .exe từ https://cygwin.com/install.html cho cygwin (một bộ lớn các công cụ GNU và Nguồn mở cung cấp chức năng tương tự như bản phân phối Linux trên Windows).

Chạy tệp .exe.

Trong khi cài đặt, bạn sẽ nhận được một bước để chọn gói. Trong cửa sổ chọn gói -> thay đổi dạng xem thành "Chưa cài đặt" và tìm kiếm curl. nhấp vào các gói cần thiết để cài đặt bằng cách nhấp vào cột "mới" cho gói -> bạn có thể xem số phiên bản và sau đó nhấp vào tiếp theo. (xem hình ảnh đính kèm bên dưới)nhập mô tả hình ảnh ở đây

Sau khi hoàn tất cài đặt, nhấp vào cygwin để mở bảng điều khiển curl trên windows và làm việc với các lệnh curl.


Tại sao bạn cần điều đó nếu có nhiều câu trả lời với cách tiếp cận đơn giản hơn?
Nico Haase

2
@NicoHaase Chỉ vì một câu trả lời khác nhau không làm cho nó sai. SO nên là về câu trả lời, không chỉ những gì đám đông tin rằng chỉ là câu trả lời tốt nhất ... đôi khi không. Tôi đã sử dụng cái này và cho nó +1 vì đây là cách hiện tại để cài đặt nó.
ΩmegaMan

1
@NicoHaase Nếu bạn ở điểm A trên một tam giác và các điểm B & C có cùng khoảng cách với điểm A. Bạn hướng dẫn ai đó đi ngẫu nhiên đến điểm B hoặc C trước sau đó để quay lại điểm A nhưng không đi từ cùng một điểm con đường bạn vừa đi từ trước. Câu trả lời nào là đúng: ABCA hoặc ACBA? Như bạn có thể thấy có nhiều hơn một câu trả lời hợp lệ và cả hai đều có giá trị như nhau trong khóa học hoặc con đường đã được thực hiện!
Francis Cugler

2

Tôi có thể hơi muộn vì điều này, nhưng tôi có thể giải quyết vấn đề curl của mình tại cmd cho windows 10.

Tôi đã nhận được trợ giúp từ video hướng dẫn bên dưới https://www.youtube.com/watch?v=qlTVMuONazs

Đây là một số giải thích

Bước 1: truy cập https://curl.haxx.se/doad.html

Bước 2: Tìm kiếm "Win64 - Chung" và tải xuống "Win64 x86_64 7zip" của "Darren Owen"

Bước 3: giải nén tệp tải xuống và cài đặt chứng chỉ "ca-bundle.crt" không chạm vào curl.exe

Bước 4: trong cửa sổ, chuyển đến "Bảng điều khiển" -> "Hệ thống" -> "Cài đặt hệ thống nâng cao" Bước 5: nhấp vào biến Envirnoment

Bước 6: Trong Biến hệ thống, nhấp vào "Đường dẫn" và dán đường dẫn của thư mục tệp trong trường hợp của tôi, đó là "C: \ curl \ curl_7_53_1_openssl_nghttp2_x64"

Và bạn đã hoàn thành.

Đừng quên khởi động lại hệ thống của bạn một lần


1

Cài đặt dòng lệnh git từ đây . Khi bạn cài đặt git trong windows, bạn sẽ tự động cuộn tròn với nó. Bạn có thể kiểm tra phiên bản cài đặt của curl bằng cách sử dụng curl --versionnhư thế này.

nhập mô tả hình ảnh ở đây

Đây là một yêu cầu curl mẫu gửi một chuỗi trong một đối tượng JSON và được mã hóa nó.

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

nhập mô tả hình ảnh ở đây


Vậy làm thế nào để gọi git-bash-curl trực tiếp từ cmd / powershell?
gek

1

Câu trả lời đơn giản nhất:

(1) Tải xuống tệp nhị phân curl tại đây: https://curl.haxx.se/doad.html (xem tệp nhị phân cho HĐH của bạn). Thí dụ:

Chọn 64 bit hoặc 32 bit sau khi nhấp

(2) Tạo thư mục "C: \ curl" sau đó giải nén tất cả ở đó

Xem tệp .crt, đó là chứng chỉ SSL đi kèm với gói curl

(3) Chỉnh sửa biến hệ thống có tên "Đường dẫn" bằng cách thêm "; C: \ curl \ bin" vào cuối. Đã kết thúc.

nhập mô tả hình ảnh ở đây

Quan sát: Tôi đã thấy một số kẻ nói thêm "; C: \ curl" nhưng theo cách này thì không thể truy cập curl.exe .


1

Với Windows 10 Insider build 17063 curl có sẵn trong cmd và powershell kể từ đầu năm 2018.


0

Đối với bất kỳ ai đang tìm kiếm một giải pháp nhanh chóng, sau khi đã cài đặt cygwin tiêu chuẩn nhưng việc tìm ra curl không hoạt động trên nền tảng win 10 x64:

Tải xuống kho lưu trữ đã nghỉ hưu này , giải nén nó và chạy:

git-cmd.bat

Làm việc như người ở. Tôi giả sử nó có tùy chọn cài đặt sẵn cho curl.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.