如何直接执行 exe 文件的 HTTPS 下载链接?
答案1
您无法直接从 Web 运行文件,但您可以先下载文件,然后运行它。此 PowerShell 单行命令应该可以做到这一点:
[System.IO.File]::WriteAllBytes("tmpfile.exe", (Invoke-WebRequest "https://example.com/app.exe").Content); Start-Process tmpfile.exe
这将在当前目录中留下一个tmpfile.exe
程序。要将其留在 Temp 目录中(希望它能很快被清理),请执行以下操作:
$tmpPath = [System.IO.Path]::GetTempFileName() + ".exe"; [System.IO.File]::WriteAllBytes($tmpPath, (Invoke-WebRequest "https://example.com/app.exe").Content); Start-Process $tmpPath
使用这些,您可能可以编写一个脚本来从任意 URL 下载并运行 EXE。您可以在常规命令提示符或批处理文件中调用 PowerShell 命令,方法是在powershell -command
其前面添加:
@echo off
rem Downloads and runs an EXE from a URL.
powershell -command $tmpPath = [System.IO.Path]::GetTempFileName() + '.exe'; [System.IO.File]::WriteAllBytes($tmpPath, (Invoke-WebRequest "%*").Content); Start-Process $tmpPath