中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-02 00:25
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 关于环境变量 查看 1,139 回复 2
楼 主 关于环境变量 发表于 2006-09-14 04:32 ·  中国 湖南 常德 电信
初级用户
积分 26
发帖 7
注册 2006-09-09 06:40
19年会员
UID 62213
性别 男
状态 离线
同目录下有这两个文件
1.txt
%SYSTEMDRIVE%\123.exe
%SYSTEMDRIVE%\567.exe
2.bat
for /f %%a in (1.txt) do echo >%%a

试运行2.bat回显
E:\>echo 1>%SYSTEMDRIVE%\123.exe
系统找不到指定的路径。
E:\>echo 1>%SYSTEMDRIVE%\567.exe
系统找不到指定的路径。

这是不是说明批处理FOR命令中不解释系统环境变量呢?
应该怎样处理才能让2.bat运行时把%SYSTEMDRIVE%这个环境变量解释为C:\呢?请高手们不啬指教,谢谢
2 发表于 2006-09-14 04:52 ·  中国 北京 联通
银牌会员
★★★
努力做坏人
积分 1,185
发帖 438
注册 2006-08-28 12:00
19年会员
UID 61449
来自 北京
状态 离线
试试这个 for /f %%a in (1.txt) do call echo %%a 这样就应该能够解释了
我今后在论坛的目标就是做个超级坏人!!!
3 感谢楼上 发表于 2006-09-14 05:56 ·  中国 湖南 常德 电信
初级用户
积分 26
发帖 7
注册 2006-09-09 06:40
19年会员
UID 62213
性别 男
状态 离线
这样改后可以正常解释与执行第一条,下面的虽解释正确却执行不正确
论坛跳转: