Wget/cURL alternative native to Windows?
Solution 1:
Native to Windows (comes preinstalled and depends on the Background Intelligent Transfer Service (BITS) Windows service):
BITSAdmin
It can do what Wget does, and probably more (you can control an ongoing job via API-like commands - for example you can get the status speed and cancel if it is too slow).
Example usage from my own experience (you can do parallel downloads in the same .bat, or do sequential downloads in the same job):
bitsadmin /create thisissomejobname
bitsadmin /addfile thisissomejobname http://kakao.ro/Pictures.iso C:\john_pictures.iso
bitsadmin /SetCredentials thisissomejobname Server BASIC somehttpuser somehttppassword
bitsadmin /resume thisissomejobname
REM how to get status:
bitsadmin /info thisissomejobname
Note: It works on Windows XP, 7, 8 & 10 (tested on Windows 10 Pro). On Windows XP it must be installed manually from the SP2 Support Tools.
On the latest Windows 10 the deprecation warning is gone, so it looks like this useful tool is here to stay.
Solution 2:
PowerShell v3 CTP1 comes with a command like wget/curl. It's called Invoke-WebRequest. To learn more, you can visit the post Windows Powershell V3 includes command like wget/curl.
Solution 3:
I often use PowerShell for simple things, like WebClient's DownloadString:
$wc = New-Object Net.WebClient
$wc.DownloadString('...')
Or DownloadFile
if you want something downloaded like wget
does and package that off into a function. Of course, this is very rough and won't have any of the niceties like resumable downloads and similar.