CN
← uxfix

curl 转 PowerShell / cmd 工具

粘贴 Linux / bash 的 curl 命令,生成 Windows 上真正能跑的版本——curl.exe 别名、续行符、JSON 引号一次处理到位。完全在浏览器内运行,文件不上传。

Linux / bash curl
Windows 命令提示符
PowerShell curl.exe

为什么 curl 命令在 PowerShell 里跑不通?

Windows PowerShell 5.1 中 curl 是 Invoke-WebRequest 的内置别名,且别名优先于 PATH 里的真 curl——于是 -H、-d 全部报错。解决办法是显式调用 curl.exe,本工具的输出正是这么做的。

引号规则差异:bash / cmd / PowerShell

续行符:\、^ 与 `

bash 用反斜杠续行,cmd 用尖号,PowerShell 用反引号;且 PowerShell 会把含换行的参数拆碎,多行 JSON 必须折叠成单行。本工具自动重写全部续行符并折叠 JSON。

常见问题

怎么在 Windows 上运行 Linux 的 curl 命令?

粘贴到上面即可。工具会重写续行符、按各 shell 规则转换引号、并在 PowerShell 中改用 curl.exe——复制结果直接运行。

为什么 PowerShell 里的 curl 变成了 Invoke-WebRequest?

因为 curl 是 PowerShell 内置别名。输入 curl.exe(带扩展名)可绕过别名,运行 Windows 10/11 自带的真 curl。

为什么 JSON 请求体在 cmd / PowerShell 里报 400?

两个 shell 给原生程序传参时都会损坏双引号:cmd 需要加倍,PowerShell 需要在单引号内反斜杠转义。引号错误会让服务器收到残缺 JSON,返回解析失败。

粘贴多行命令时,Windows 为什么会弹警告?

Windows Terminal 会提示 "You are about to paste text that contains multiple lines. If you paste this text into your shell, it may result in the unexpected execution of commands."(即将粘贴多行文本,可能导致意外执行命令)——因为每一行都可能被当作独立命令执行。这通常说明命令还是 bash 语法:反斜杠续行和单引号在 Windows shell 里都不成立。先用工具转换,输出即可安全粘贴。

命令和数据会被上传吗?

不会。全部转换在浏览器内用 JavaScript 完成,命令、令牌与响应都不会离开你的设备。