我有一个批处理脚本如下:
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] 删除。
我来说两句