You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PowerShell从归档列表获取最新二进制版本

PowerShell脚本:获取Docker Windows静态稳定版最新Zip包信息

以下是实现需求的PowerShell脚本,可直接从指定归档页面提取最新版本号和下载链接:

# 定义归档页面URL
$archiveUrl = "https://download.docker.com/win/static/stable/x86_64/"

try {
    # 获取页面HTML内容(使用基础解析避免依赖IE引擎)
    $response = Invoke-WebRequest -Uri $archiveUrl -UseBasicParsing
    # 筛选出所有符合docker-*.zip格式的链接
    $zipLinks = $response.Links | Where-Object { $_.href -match '^docker-\d+\.\d+\.\d+\.zip$' }

    if (-not $zipLinks) {
        Write-Error "未找到符合格式的Docker Zip包链接"
        exit 1
    }

    # 提取每个链接的版本号并整理为对象
    $versionInfo = $zipLinks | ForEach-Object {
        if ($_.href -match 'docker-(\d+\.\d+\.\d+)\.zip') {
            [PSCustomObject]@{
                Version     = [version]$matches[1]
                DownloadUrl = $archiveUrl + $_.href
            }
        }
    }

    # 按版本号降序排序,取第一个即为最新版本
    $latestVersion = $versionInfo | Sort-Object Version -Descending | Select-Object -First 1

    # 输出结果
    Write-Host "最新Docker版本: $($latestVersion.Version)"
    Write-Host "下载链接: $($latestVersion.DownloadUrl)"
}
catch {
    Write-Error "请求页面失败: $_"
    exit 1
}

关键逻辑说明

  • 页面解析:用-UseBasicParsing参数确保脚本在无IE环境下也能正常运行,兼容性更强。
  • 链接筛选:通过正则表达式精准匹配静态包文件名,排除页面中其他无关链接。
  • 版本排序:将版本号转为[version]类型,利用PowerShell内置的语义化版本排序规则,准确识别最新版本。
  • 结果输出:直接输出版本号和完整下载链接,可直接对接你后续的Zip包处理脚本。

内容的提问来源于stack exchange,提问作者Vikrant Punwatkar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 12:03:14