¿Hay una herramienta de línea de comandos integrada en Windows como wget / curl?

40

Vengo de un entorno Linux / Unix y me he estado preguntando si Windows tiene un binario que pueda descargar archivos desde la consola.

Me gustaría automatizar un determinado proceso y uno de mis requisitos es no instalar mucho software, sino usar las cosas integradas tanto como sea posible.

¡Gracias!

Carlspring
fuente
para ser honesto ... wget y curl no son realmente comandos incorporados.
Mike
1
Windows 8.1, octubre de 2017: curl y wget están incluidos en PowerShell, como muestra: stackoverflow.com/questions/33364752/…
SDsolar
Todavía no tengo suficiente crédito para publicar una respuesta en este sitio, pero la respuesta aceptada es incorrecta. De hecho, hay una alternativa lista para bitsadmin /transfer myDownloadJob /download /priority normal https://path/to/remote/file.txt c:\path\to\local\file.txt
usar

Respuestas:

11

No hay wget como el comando incorporado en Windows. Puede usar .net Framework a través de Windows PowerShell como en este ejemplo:

https://superuser.com/questions/362152/native-alternative-to-wget-in-windows-powershell

o como lo hago y uso wget para Windows:

http://gnuwin32.sourceforge.net/packages/wget.htm

usuario1008764
fuente
1
¡Gracias! Esperaba un binario nativo, pero ... ¡qué diablos! : D
carlspring
La versión gnu de wget para Windows tiene un error importante que hace que se bloquee al descargar archivos grandes.
Juan Jiménez
Todavía no tengo suficiente crédito para publicar una respuesta en este sitio, pero la respuesta aceptada es incorrecta. De hecho, hay una alternativa lista para bitsadmin /transfer myDownloadJob /download /priority normal https://path/to/remote/file.txt c:\path\to\local\file.txt
usar
24

Potencia Shell.

$wc = New-Object System.Net.WebClient
$wc.DownloadFile($source, $dest)

También hay Invoke-WebRequest en PS 3.0.

Ryan Ries
fuente
Realmente esperaba una parte de implementación nativa del sistema.
carlspring
55
Es una parte nativa del sistema. Viene con Windows fuera de la caja.
Ryan Ries
13

Si tiene PowerShell> = 3.0, puede usar Invoke-WebRequest

Invoke-WebRequest -OutFile index.html http://superuser.com

O golf

iwr -outf index.html http://superuser.com

Descargar un archivo a través de HTTP en Windows

Steven Penny
fuente
1
Acabo de comprobar ... "wget" es un alias incorporado para Invoke-WebRequest. :)
Charles Burge
3
@CharlesBurge se elimina con PowerShell 6
Steven Penny el
7

Me gusta la utilidad http-ping. Puede ejecutar con esta configuración: haga ping una vez y guarde el contenido en google.html

http-ping.exe -n 1 http://www.google.com/ -f google.html

No requiere instalación. Consulta más información sobre http-ping aquí

mstrumyla
fuente