【发布时间】:2017-11-12 13:19:28
【问题描述】:
enter image description here我正在尝试在 for /f 循环中设置一个或两个变量并在循环外使用它们,但到目前为止我没有这样做,经过数小时的尝试我终于放弃并要求有人来帮助我。我知道在批处理文件中使用了 SETLOCAL ENABLEDELAYEDEXPANSION 但无论是否使用它仍然无法正常工作。 到目前为止的代码是:
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
curl -s 192.168.1.68/cgi-bin/home | for /f "tokens=1,2,3" %%a in ('Grep -o -P "[0-9].{0,8}kWh.{0,0}"') do (
set VAR01=%%a
set VAR02=%%a
)
echo %VAR01%
echo !VAR01!
ENDLOCAL
控制台上的结果是:
(set VAR01=2.14 & set VAR02=2.14 )
ECHO is off.
ECHO is off.
变量在循环中被设置,但在循环外它不是。
【问题讨论】:
-
回声 %VAR01% 和回声 !VAR01! 的结果是“”/空白,/什么都没有。
-
是的,不幸的是,为什么你认为不是?
标签: batch-file