中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 【求助】关于ECHO的疑惑 上一主题 | 下一主题
simplenoughappy
初级用户





积分 42
发帖 19
注册 2008-2-18
状态 离线
『楼 主』:  【求助】关于ECHO的疑惑

@echo off
set a=1
echo %a%
pause
以上语句....我执行批处理时正常显示1

然后...将上述批处理改成如下:
@echo off
set aDate = %date:~0,-4%
for /f "tokens=1" %%a in ('type "d:\date.txt"^|find "%aDate%"') do set LastDate = "%%a"
echo %LastDate%
pause
提示ECHO关闭

然后再改回为
@echo off
set a=1
echo %a%
pause
仍然提示ECHO处于关闭状态

.一头雾水中....问题出在什么地方呢

[ Last edited by simplenoughappy on 2008-3-4 at 05:00 PM ]

2008-3-4 16:54
查看资料  发短消息 网志   编辑帖子  回复  引用回复
abcd
银牌会员





积分 1436
发帖 739
注册 2007-10-11
状态 离线
『第 2 楼』:  

没事不好加这么多空格

2008-3-4 17:19
查看资料  发短消息 网志  OICQ (470237592)  编辑帖子  回复  引用回复
suntb
高级用户





积分 581
发帖 277
注册 2006-12-23
状态 离线
『第 3 楼』:  

set aDate = %date:~0,-4%
这句带空格,把空格删掉试试看
set aDate=%date:~0,-4%

还有"tokens=1"可以删除,默认就是取第一列的值

2008-3-4 17:20
查看资料  发短消息 网志   编辑帖子  回复  引用回复
simplenoughappy
初级用户





积分 42
发帖 19
注册 2008-2-18
状态 离线
『第 4 楼』:  

刚才去改了下..估计就是空格的事...
谢谢楼上几位的提醒.....刚开始接触批处理很多东西不懂
感觉在空格上面真是很严格的样子...
以前习惯在=号2边加空格了...

2008-3-4 17:29
查看资料  发短消息 网志   编辑帖子  回复  引用回复
pooronce
中级用户





积分 484
发帖 250
注册 2007-6-5
状态 离线
『第 5 楼』:  

因为空格影响了变量的值,所以最后find并未能找到,所以 for语言的输出为空
你让echo去显示空变量,就出现那种情况了

2008-3-4 18:10
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: