Board logo

标题: 【求助】关于ECHO的疑惑 [打印本页]

作者: simplenoughappy     时间: 2008-3-4 16:54    标题: 【求助】关于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 ]

作者: abcd     时间: 2008-3-4 17:19
没事不好加这么多空格

作者: suntb     时间: 2008-3-4 17:20
set aDate = %date:~0,-4% 这句带空格,把空格删掉试试看 set aDate=%date:~0,-4% 还有"tokens=1"可以删除,默认就是取第一列的值

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

作者: pooronce     时间: 2008-3-4 18:10
因为空格影响了变量的值,所以最后find并未能找到,所以 for语言的输出为空 你让echo去显示空变量,就出现那种情况了