50

I come from a Linux/Unix background and I have been wondering if Windows has a binary that can download files from the console.

I would like to automate a certain process and one of my requirements it to not install much software, but use the built-in stuff as much as possible.

Thanks!

4
  • to be honest.. wget and curl aren't really built-in commands.
    – Mike
    Jan 4 '16 at 13:43
  • 1
    Windows 8.1, October 2017 - curl and wget are both included in PowerShell, as this shows: stackoverflow.com/questions/33364752/…
    – SDsolar
    Oct 14 '17 at 7:53
  • I don't have sufficient cred to post an answer on this site yet, but the accepted answer is incorrect. In fact, there is an out-of-box alternative on windows: bitsadmin /transfer myDownloadJob /download /priority normal https://path/to/remote/file.txt c:\path\to\local\file.txt Oct 31 '19 at 20:00
  • 1
    UPDATE: As of Windows 10 build 17063 curl has been added to Windows May 5 '20 at 14:39
12

There is no wget like built-in command in Windows. You can use the .net Framework via Windows PowerShell like in this example:

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

or like i do and use wget for Windows:

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

3
  • 1
    Thanks! I was hoping for a native binary, but... what the heck -- wget it is! :D
    – carlspring
    Mar 1 '13 at 14:09
  • The gnu version of wget for windows has a major bug that makes it crash when downloading large files. Mar 1 '18 at 9:11
  • 1
    I don't have sufficient cred to post an answer on this site yet, but the accepted answer is incorrect. In fact, there is an out-of-box alternative on windows: bitsadmin /transfer myDownloadJob /download /priority normal https://path/to/remote/file.txt c:\path\to\local\file.txt Oct 31 '19 at 20:00
28

Powershell.

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

There's also Invoke-WebRequest in PS 3.0.

2
  • I was really hoping for a native implementation part of the system.
    – carlspring
    Mar 1 '13 at 14:08
  • 8
    It is a native part of the system. It comes with Windows out of the box.
    – Ryan Ries
    Mar 1 '13 at 14:09
25

cURL

Windows 10 includes curl.exe:

https://techcommunity.microsoft.com/t5/containers/-/ba-p/382409

so you can do something like this:

# example 1
curl.exe --output index.html --url https://superuser.com
# example 2
curl.exe -o index.html https://superuser.com

If you have older Windows, you can still download it:

https://curl.haxx.se/windows

PowerShell

# example 1
Invoke-WebRequest -OutFile index.html -Uri https://superuser.com
# example 2
iwr -outf index.html https://superuser.com

https://docs.microsoft.com/powershell/module/microsoft.powershell.utility/invoke-webrequest

0
8

I like http-ping utility. You can run with these settings: ping once and save the contents to google.html

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

It does not require installation. Check more about http-ping here

Not the answer you're looking for? Browse other questions tagged or ask your own question.