Slow download using Powershell

Recently I downloaded a file using the Powershell command “Invoke-WebRequest” (there is a linuxy short form: “wget” which is nice). The exact command:

wget "https://URL_HERE" -OutFile Filename.iso

This worked flawlessly, but took an incredibly long time. The download speed was about one hundredth of my normal download speed.

After a little digging around, I came across this stackoverflow question (where else would one search for answers…) – apparently every “ByteReceived” event updates the display. So on EVERY byte received, the console’s Curser is put in the place of the bytes and the number is updated.

Progress output from ” Invoke-WebRequest”

To get around this, you can disable the progress indicator completely:

$ProgressPreference = 'SilentlyContinue'

After that you don’t see the progress anymore, but at least it works normally fast.

Leave a Reply

Your email address will not be published. Required fields are marked *