2015-07-13 50 views
1

我正在使用Start-BitsTransfer命令在PowerShell腳本中下載遠程資源。Start-BitsTransfer在重定向時忽略文件名

但是,似乎該命令沒有采取正確的文件名,當url是一個簡短的URL。

例如,這些網址:http://ligman.me/1IW1oab實際重定向到http://download.microsoft.com/DOWNLOAD/D/6/7/D670D322-5771-409E-BF34-5B98496DEB0A/MICROSOFT_PRESS_EBOOK_INTRODUCING_AZURE_PDF.PDF(HTTP 響應)。

但是,當我執行

Start-BitsTransfer http://ligman.me/1IW1oab 

結果文件名是1IW1oab

是否有使用這個命令和獲得正確的文件名的方法嗎?

回答

1

只需用命令沒有,但你可以解決這樣的鏡頭前,網址:

$url = 'http://ligman.me/1IW1oab'  
$WebClientObject = New-Object System.Net.WebClient 
$WebRequest = [System.Net.WebRequest]::create($URL) 
$WebResponse = $WebRequest.GetResponse() 
$ActualDownloadURL = $WebResponse.ResponseUri.AbsoluteUri 
$ObjectProperties = @{ 'Shortened URL' = $URL; 
         'Actual URL' = $ActualDownloadURL} 
$ResultsObject = New-Object -TypeName PSObject -Property $ObjectProperties 
$WebResponse.Close() 
$ResultsObject.'Actual URL'