中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-04 21:48
48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 变量不能赋值?什么问题?
可打印版本  684 / 6
第1楼 ruisoft 发表于 2007-06-08 14:43
初级用户 发帖 57 积分 93
变量不能赋值?什么问题?
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 是空值,请问什么地方错了?
第2楼 lxmxn 发表于 2007-06-08 14:45
版主 发帖 4,938 积分 11,386
call echo %var% 试试。
第3楼 wudixin96 发表于 2007-06-08 14:50
银牌会员 发帖 931 积分 1,928
是call echo %%var%%吧?
第4楼 ruisoft 发表于 2007-06-08 14:51
初级用户 发帖 57 积分 93
仍然不行。:(

:(:(:(
第5楼 zasxcdfv 发表于 2007-06-08 15:04
初级用户 发帖 75 积分 152
@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!

)
第6楼 ruisoft 发表于 2007-06-08 15:18
初级用户 发帖 57 积分 93
为什么这儿要用“!”才行?

用“%”就不行?
第7楼 zasxcdfv 发表于 2007-06-08 15:46
初级用户 发帖 75 积分 152
我也是初学者~
这个问题主要是刚刚遇到过,变量延迟的时候不能用%。关于变量延迟的帖子版里有不少,lz可以看看~
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023