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

如何在Powershell中用cURL单行命令下载并直接运行exe文件

命令失效原因
  • 管道后的单独-没有对应可执行程序处理输入:python -里的-是Python解释器约定的特殊参数,代表从标准输入读取脚本内容执行,但不存在默认的系统程序会识别单独的-参数、从标准输入读取内容运行EXE
  • EXE本身的运行逻辑不支持从标准输入加载:Windows下的EXE是PE格式二进制文件,系统进程加载器需要读取完整的PE头、分段映射等信息,必须从磁盘文件读取加载,不能直接从标准输入的流中启动运行,和Python这类解释型程序读取文本流执行的逻辑完全不同
  • 若未单独安装原生curl,Powershell中默认的curl是Invoke-WebRequest的别名,行为和Linux原生curl不一致,也会导致管道处理不符合预期
Powershell单行实现下载并直接运行EXE的方法

由于EXE必须落地到磁盘才能被系统加载运行,单行命令需要先将下载的二进制内容存入临时文件再执行,两种可用写法如下:

  1. 已安装原生curl的环境使用:
curl.exe -o $env:TEMP\app.exe https://linktoexe/app.exe ; Start-Process $env:TEMP\app.exe
  1. 无需额外安装curl,直接用Powershell内置命令实现:
iwr https://linktoexe/app.exe -o $env:TEMP\app.exe ; saps $env:TEMP\app.exe

说明:iwr是Invoke-WebRequest的别名,saps是Start-Process的别名;如果需要等待程序执行完成后再返回终端,可以给Start-Process添加-Wait参数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 13:57:03