为什么不能传递变量值?

DBALUKE HUANG

我有一个批处理脚本如下:

setlocal enabledelayedexpansion
for /f "tokens=1,2 skip=3 delims= " %%a in (Instance_list.txt) do (
Set Intance_NAME=%%a
echo %Intance_NAME%

但是 echo 部分是空的(Nothing)。
你能告诉我原因并帮助我解决这个问题吗?

格哈德

几件事:

您激活delayedexpansion但从未使用它(请参阅%最后一行中的替换!

您也不需要在空格上使用 `"delims=",因为空格是批处理中的默认分隔符。

你没有用结束来结束循环 (

@echo off
setlocal enabledelayedexpansion
for /f "tokens=1,2 skip=3" %%a in (Instance_list.txt) do (
Set Intance_NAME=%%a
echo !Intance_NAME!
)

最后,delayedexpansion如果您不在循环内设置变量,则您实际上并不需要,因此您也可以这样做:

@echo off
for /f "tokens=1,2 skip=3" %%a in (Instance_list.txt) do echo %%a

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章