Lädt man via Invoke-WebRequest in der PowerShell etwas herunter, fällt spätestens bei größeren Dateien auf, das dies ungewöhnlich lange dauert bzw. die Performance eher mäßig ist.
Setzt man vor dem obigen Cmdlet folgendes, geht es viel schneller:
$ProgressPreference = 'SilentlyContinue'
Alternativ kann man ThirdParty-Tools wie wget oder das mittlerweile in Windows integrierte curl nutzen:
wget <URL> -O <LokalerDateiname> curl.exe --output <LokalerDateiname> "<URL>"
Update 18.09.2025
Als Einzeiler für Batch kann der PowerShell-Befehl so aussehen:
powershell.exe $progressPreference = 'silentlyContinue'; Invoke-WebRequest '<URL>' -OutFile '<LokalerDateiname>'
Update 26.09.2025
Invoke-RestMethod ist ebenfalls von diesem Thema betroffen und kann durch das Weglassen des Fortschritts beschleunigt werden:
powershell.exe $progressPreference = 'silentlyContinue'; Invoke-RestMethod '<URL>' -OutFile '<LokalerDateiname>'
By the way:
Start-BitsTransfer scheint mit dem Fortschritt keine Performance-Probleme zu haben. Deaktivieren kann man ihn dennoch, wenn man es möchte:
powershell.exe Start-BitsTransfer -Source "<URL>" -Destination "C:\Temp\<LokalerDateiname>" powershell.exe $progressPreference = 'silentlyContinue'; Start-BitsTransfer -Source "<URL>" -Destination "C:\Temp\<LokalerDateiname>"
Wie hat Dir der Artikel gefallen ?
Du möchtest den Blog unterstützen ?
Neben PayPal.ME gibt es noch weitere Möglichkeiten, lies hier wie du diesen Blog unterstützen kannst.
Quellen
Microsoft Learn – PowerShell – about_Preference_Variables
stackoverflow – Powershell – Why is Using Invoke-WebRequest Much Slower Than a Browser Download?

Verheiratet, Vater von zwei Kindern, eines an der Hand, eines im Herzen. Schon immer Technik-Freund, seit 2001 in der IT tätig und seit über 15 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen.

XING











Schreibe einen Kommentar