我尝试了以下
Invoke-WebRequest -Uri“ https://download.microsoft.com/download/6/4/8/648EB83C-00F9-49B2-806D-E46033DA4AE6/ExchangeServer2016-CU1.iso ” -OutFile“ Exchange.iso”
但这失败与“ OutOfMemory”。
然后我尝试了-TransferEncoding“ chunked”,它告诉我必须首先设置“ SendChunked”属性。
该文档没有说明如何,在何处以及何时设置此属性...
PowerShell限制远程连接(旧版本限制为大约128MB)。您可以使用来增加该限制Set-Item .\MaxMemoryPerShellMB
。但这可能无法解决非常大文件的问题。
那些的最佳选择是使用BITS
例子:
$url = "http://files.net/test/file1.test"
$output = "$PSScriptRoot\file1.test"
$start_time = Get-Date
Import-Module BitsTransfer
Start-BitsTransfer -Source $url -Destination $output
***OR***
Start-BitsTransfer -Source $url -Destination $output -Asynchronous
Write-Output "Time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)"
或者,尝试.Net.WebClient:
$url = "http://files.net/test/file1.test"
$output = "$PSScriptRoot\file1.test"
$start_time = Get-Date
$wc = New-Object System.Net.WebClient
$wc.DownloadFile($url, $output)
***OR***
(New-Object System.Net.WebClient).DownloadFile($url, $output)
Write-Output "Time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句