Esegui i comandi cURL dalla console di Windows


380

Esiste un modo per installare cURL in Windows per eseguire i comandi cURL dal prompt dei comandi?


4
e poi c'è sempre VBScript / PowerShell stackoverflow.com/questions/204759/http-get-in-vbs
Kalpesh Soni

il mio ricciolo è installato in xampp ed è abilitato, posso farlo funzionare in Windows cmd?
Master Yoda,

1
Ho notato che la stessa domanda è stata pubblicata su SuperUser qui: superuser.com/questions/134685/…
Simon East

4
A partire da maggio 2018, con Windows 10 di build 1803, è possibile eseguire ricciolo direttamente dalla console di Windows: stackoverflow.com/a/50200838/6309
VonC

1
in realtà l'arricciatura è stata inclusa dalla build
phuclv,

Risposte:


449

Se non ti piace Cygwin , puoi utilizzare build native di Windows. Alcuni sono qui: arricciamento Download Wizard .


Anche msys2, che non ho ancora visto menzionato. Potresti averlo già se, ad esempio, hai installato Haskell.
DPM,

8
È possibile installare Gite usare git bash. Integrato dopo l'installazione. (vedi risposta sotto).
BRogers,

167

Per prima cosa devi scaricare l'eseguibile cURL. Per Windows a 64 bit, scaricalo da qui e per Windows a 32 bit da qui. Successivamente, salva il curl.exefile sul tuoC: disco.

Per usarlo, basta aprire command prompte digitare:

C:\curl http://someurl.com

1
Cavolo sì, mi ha aiutato. Molto facile. Grazie per la pubblicazione.
Adrian Carr,

È molto importante usare "invece di 'se hai intenzione di farlo in Windows :)
chomp

144

Se hai Gitinstallato su Windows puoi usare GNU Bash.... è integrato.

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


3
Ciò significa che lo avresti eseguito come faresti da OSX o Linux senza usare comandi speciali tra l'altro. Basta avviare Git Bashe curl via :)
BRogers

2
Questa risposta richiede più voti. Questa è la strada da percorrere per gli utenti che si sentono a proprio agio con il terminale mac o le distribuzioni unix.
BigRon,

1
Grazie :) dato che uso Git principalmente comunque (indipendentemente dal sistema operativo che sto usando) ho bisogno di Git Bash installato. Non mi piace installare maghi o gonfiore extra. Inoltre, non sono un grande fan del tentativo di utilizzare PowerShell per fare tutto in Windows
BRogers,

41

Le persone che non hanno letteralmente bisogno curldell'eseguibile, ma devono semplicemente vedere e salvare i risultati di una richiesta GET di tanto in tanto, possono usare powershelldirettamente. Da un normale prompt dei comandi, digitare:

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

che, sebbene un po 'prolisso, è simile alla digitazione

curl http://example.com/

in un ambiente più Unix-ish.

Ulteriori informazioni net.webclientsono disponibili qui: Metodi WebClient (System.Net) .

AGGIORNAMENTO: Mi piace come ImranHafeez abbia fatto un ulteriore passo avanti in questa risposta . Preferirei comunque uno script cmd più semplice, magari creando un curl.cmdfile contenente questo:

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

che potrebbe essere chiamato proprio come nell'esempio Unix-ish sopra:

curl http://example.com/

Le credenziali possono essere fornite powershell -Command "$wc=new-object net.webclient;$wc.Credentials=new-object System.Net.NetworkCredential(%user%,%pass%);$wc.DownloadString('%input%')"da stackoverflow.com/a/509394/4985705
Max

ATTENZIONE: questo NON passa parametri GET alla pagina. L'ho usato con una pagina PHP. curl https://www.example.com/mypage.php?action=hello. Nello script mypage.php, $_GET['action']è vuoto
Stephen R,


10

Crea file batch in Windows e divertiti con 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

7
  1. Visita la pagina di download https://curl.haxx.se/download.html - è incredibile
  2. Scegli il tuo sistema nell'elenco
  3. Non dimenticare il supporto SSL, è ovvio ora, ad esempio per https
  4. Disimballare curl.exee .crtperC:\Windows\System32
  5. Riavvia cmd
  6. Godere > curl https://api.stackexchange.com

ps Se desideri che un'altra cartella memorizzi un file eseguibile, controlla i tuoi percorsi > echo %PATH%


6

dovrebbe funzionare perfettamente se lo scaricassi da - http://curl.haxx.se/dlwiz/?type=bin&os=Win64&flav=MinGW64 - FOR 64BIT Win7 / XP O da http: //curl.haxx. se / dlwiz /? type = bin & os = Win32 & flav = - & ver = 2000% 2FXP --- PER 32BIT Win7 / XP basta estrarre i file in c: / Windows ed eseguirlo da 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

Ho anche scoperto che se metto il cestino cygwin sul mio percorso di Windows posso eseguire l'arricciatura da una riga di comando di Windows. Ti darà anche accesso a cose come ls e grep


Puoi fare di più se i binari appropriati si trovano nella directory Cygwin / bin! Puoi anche chiamare le opzioni del compilatore di gcc, make, zip, lynx, ecc. Tuttavia ci sono alcune limitazioni e probabilmente vorrai eseguire windows cmd essendo elevato ai privilegi di amministratore, quindi vai alla tua directory Cygwin o Cygwin64 all'interno del prompt dei comandi quindi chiama il file batch di Cygwin. Tuttavia, assicurarsi che nella proprietà del sistema per le variabili di ambiente nel percorso sia impostato il percorso su Cygwin64 / bin /. Ora puoi usare i binari Unix per eseguire all'interno di cmd.
Francis Cugler,

3

Sono stato in grado di utilizzare questo sito per scaricare e installare facilmente l'arricciatura sul mio computer Windows. Ci sono voluti tutti e 30 i secondi. Sto usando Windows 7 (con i privilegi di amministratore), quindi ho scaricato curl-7.37.0-win64.msi da http://curl.haxx.se/download.html .

Inoltre, non dimenticare di riavviare la console / il terminale dopo aver installato il ricciolo, altrimenti riceverai gli stessi messaggi di errore.


3

Supponendo che tu non abbia familiarità con il gioco o che tu non sia in grado di installare software a causa delle restrizioni di sicurezza, potresti usare Scoop per installare il ricciolo. Da una finestra di PowerShell o comandi eseguire i seguenti comandi. Nota che questo presuppone che tu abbia Powershell v3.0 +.

L'altro fantastico vantaggio qui è che questo installa il software solo per l'utente corrente.

  1. Imposta eccezione di esecuzione

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

    iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
    
  3. Installa il ricciolo. È possibile che venga visualizzato un avviso relativo a un hash mancante, ma si dovrebbe visualizzare un messaggio finale che cURL è stato installato correttamente

    scoop install curl
    
  4. Prova l'installazione di arricciatura

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

1
Questa aveva la risposta che cercavo nascosta in bella vista! iex (new-object net.webclient).downloadstring('https://a.url.here')scaricare ed eseguire uno script PS era proprio quello di cui avevo bisogno.
Forse vedi questo nome.

3

Dal prompt dei comandi di Windows, eseguire curl attraverso Git Bash

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

2
  1. Vai all'arricciatura Download Wizard
  2. Seleziona eseguibile arricciatura
  3. Seleziona Win32 o Win64
  4. Quindi selezionare il pacchetto (ad es. Generico / cygwin) in base alle proprie esigenze
  5. Quindi dovrai selezionare la versione. È possibile selezionare non specificato.
  6. Questo ti porterà direttamente al link per il download che al clic ti farà apparire un popup per scaricare il file zip.
  7. Estrai lo zip per ottenere l'eseguibile. Aggiungi questa cartella nelle variabili di ambiente e il gioco è fatto. È quindi possibile eseguire il comando arricciatura da cmd.

2

Scarica il file .exe da https://cygwin.com/install.html per cygwin (una vasta raccolta di strumenti GNU e Open Source che offrono funzionalità simili a una distribuzione Linux su Windows).

Esegui il file .exe.

Durante l'installazione ti verrà richiesto di selezionare i pacchetti. Nella finestra Seleziona pacchetto -> cambia la vista in "Non installato" e cerca l'arricciatura. fai clic sui pacchetti necessari per l'installazione facendo clic sulla colonna "nuovo" per il pacchetto -> puoi vedere il numero di versione e quindi fare clic su Avanti. (vedi l'immagine allegata di seguito)inserisci qui la descrizione dell'immagine

Dopo aver terminato l'installazione, fare clic su Cygwin per aprire la console di arricciatura su Windows e lavorare sui comandi di arricciatura.


Perché ne hai bisogno se ci sono più risposte con un approccio più semplice?
Nico Haase,

2
@NicoHaase Solo perché una risposta è diversa non la rende necessariamente sbagliata. SO dovrebbe riguardare le risposte, non solo ciò che la folla crede sia solo la risposta migliore ... a volte non lo è. L'ho usato e gli ho dato un +1 perché è il modo attuale di installarlo.
ΩmegaMan

1
@NicoHaase Se ti trovi nel punto A di un triangolo e i punti B e C sono alla stessa distanza dal punto A. Istruisci qualcuno a viaggiare in modo casuale verso uno dei punti B o C, quindi per tornare indietro al punto A ma non dallo stesso percorso da cui hai appena viaggiato. Quale risposta è corretta: ABCA o ACBA? Come puoi vedere ci sono più di una risposta valida ed entrambe valgono lo stesso nel corso o percorso che è stato preso!
Francis Cugler,

2

Potrei essere un po 'in ritardo per questo, ma sono in grado di risolvere il mio problema di arricciatura a cmd per Windows 10.

Ho ricevuto assistenza dal seguente tutorial video https://www.youtube.com/watch?v=qlTVMuONazs

Ecco qualche spiegazione

Passaggio 1: vai su https://curl.haxx.se/download.html

Passaggio 2: Cerca "Win64 - Generic" e scarica "Win64 x86_64 7zip" di "Darren Owen"

Passaggio 3: decomprimere il file scaricato e installare il certificato "ca-bundle.crt" non toccare curl.exe

Passaggio 4: in Windows vai su "Pannello di controllo" -> "Sistema" -> "Impostazioni di sistema avanzate" Passaggio 5: fai clic su Variabili di ambiente

Passaggio 6: nella variabile di sistema fare clic su "Percorso" e incollare il percorso della cartella del file nel mio caso è "C: \ curl \ curl_7_53_1_openssl_nghttp2_x64"

E il gioco è fatto.

Non dimenticare di riavviare il sistema per una volta


1

Installa la riga di comando git da qui . Quando installi git in Windows, ti arriccia automaticamente. Puoi controllare la versione installata di arricciatura usando in curl --versionquesto modo.

inserisci qui la descrizione dell'immagine

Questa è una richiesta di arricciatura di esempio che invia una stringa in un oggetto JSON e lo codifica.

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

inserisci qui la descrizione dell'immagine


quindi come chiamare git-bash-curl direttamente da cmd / powershell?
gek,

1

Risposta più semplice:

(1) Scarica il file binario di curl qui: https://curl.haxx.se/download.html (vedi il file binario per il tuo sistema operativo). Esempio:

Scegli 64 bit o 32 bit dopo il clic

(2) Creare una cartella "C: \ curl" quindi decomprimere tutto lì

Vedi il file .crt, è il certificato SSL già fornito con il pacchetto curl

(3) Modifica la variabile di sistema chiamata "Path" aggiungendo "; C: \ curl \ bin" alla fine. Finito.

inserisci qui la descrizione dell'immagine

Obs .: Ho visto alcuni ragazzi che dicevano di aggiungere "; C: \ curl" ma in questo modo non è possibile accedere a curl.exe .


1

Con Windows 10 Insider build 17063 curl è disponibile in cmd e powershell dall'inizio del 2018.


0

Per chiunque cerchi una soluzione rapida, dopo aver installato Cygwin standard ma aver scoperto l'arricciatura non ha funzionato su una piattaforma Win 10 x64:

Download di questo repository ritirato, estrazione ed esecuzione:

git-cmd.bat

Ha funzionato come un fascino. Presumo che abbia l'opzione preinstallata per l'arricciatura.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.