我试图将URL的响应存储到批处理脚本中的变量
的例子:
set initial=PowerShell -Command "(new-object net.webclient).DownloadString('https://some-url/id')"
我试图存储的响应:
PowerShell -Command "(new-object net.webclient).DownloadString('https://some-url/id')"
变量:
initial
但这不起作用。我怎样才能实现我的目标?
使用for /f
。像这样。
for /f "usebackq delims=" %%a in (`PowerShell -Command "(new-object net.webclient).DownloadString('https://some-url/id')"`) do set initial=%%a
这是一个展示如何获取公共ip地址的示例:
@echo off
set "URL=http://myexternalip.com/raw"
Call :GetResponse %URL%
echo %initial%
Pause>nul & exit
::*****************************************************************
:GetResponse <URL>
for /f "usebackq delims=" %%a in (`PowerShell -Command "(new-object net.webclient).DownloadString('%1')"`) do set "initial=%%a"
Exit /b
::*****************************************************************