有没有办法使用 CMD、VBS 或 Powershell 从 URL 下载文件

有没有办法使用 CMD、VBS 或 Powershell 从 URL 下载文件

我需要一个小脚本来下载一些程序。URL 永远不会改变,但文件会改变。就像您下载 malwarebytes 时一样。

例子: ”https://downloads.malwarebytes.com/file/mbam_current/

地址没有改变,但下载的文件名会改变。我看到的每个脚本都要求您指定文件名。我不想这样做,我希望脚本从站点标头中提取文件名,该文件名将包含该文件的版本名称。我似乎找不到任何方法可以做到这一点。请帮助我,聪明的人。

它需要在 Windows 7 及更高版本上运行。

答案1

发现了一些东西,这有效!!!!!

import-module bitstransfer
$url="http://downloads.malwarebytes.com/file/mbam_current/"

Function Get-RedirectedUrl {

    Param (
        [Parameter(Mandatory=$true)]
        [String]$URL
    )

    $request = [System.Net.WebRequest]::Create($url)
    $request.AllowAutoRedirect=$false
    $response=$request.GetResponse()

    If ($response.StatusCode -eq "Found")
    {
        $response.GetResponseHeader("Location")
    }
}

$FileName = [System.IO.Path]::GetFileName((Get-RedirectedUrl "http://downloads.malwarebytes.com/file/mbam_current/"))

start-bitstransfer -source $url -Destination $FileName

相关内容