作者:ruisoft | 时间:2007-06-08 14:43 | 标题:变量不能赋值?什么问题?
dir D:\Documents /a /b > doc.txt
FOR /F " DELIMS=," %%T IN (doc.txt) DO (
set var="%USER-HOST%-%USER-IP%-%USER-MAC%-%USER-DATE%-%USER-TIME%-%%T"
echo %var%
)
上述代码执行时,变量 var 是空值,请问什么地方错了?
作者:lxmxn | 时间:2007-06-08 14:45
call echo %var% 试试。
作者:wudixin96 | 时间:2007-06-08 14:50
是call echo %%var%%吧?
作者:ruisoft | 时间:2007-06-08 14:51
仍然不行。:(
:(:(:(
作者:zasxcdfv | 时间:2007-06-08 15:04
@echo off
setlocal enabledelayedexpansion
dir D:\ /a /b > doc.txt
FOR /F " DELIMS=," %%T IN (doc.txt) DO (
set var="%USER-HOST%-%USER-IP%-%USER-MAC%-%USER-DATE%-%USER-TIME%-%%T"
echo !var!
)
作者:ruisoft | 时间:2007-06-08 15:18
为什么这儿要用“!”才行?
用“%”就不行?
作者:zasxcdfv | 时间:2007-06-08 15:46
我也是初学者~
这个问题主要是刚刚遇到过,变量延迟的时候不能用%。关于变量延迟的帖子版里有不少,lz可以看看~