![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-07 16:18 |
共 48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,252 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 【求助】关于ECHO的疑惑 |
| 可打印版本 700 / 4 |
| 第1楼 simplenoughappy | 发表于 2008-03-04 16:54 |
| 初级用户 发帖 19 积分 42 | |
|
【求助】关于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 ] |
|
| 第2楼 abcd | 发表于 2008-03-04 17:19 |
| 银牌会员 发帖 739 积分 1,436 | |
|
没事不好加这么多空格
|
|
| 第3楼 suntb | 发表于 2008-03-04 17:20 |
| 高级用户 发帖 277 积分 581 | |
|
set aDate = %date:~0,-4%
这句带空格,把空格删掉试试看 set aDate=%date:~0,-4% 还有"tokens=1"可以删除,默认就是取第一列的值 |
|
| 第4楼 simplenoughappy | 发表于 2008-03-04 17:29 |
| 初级用户 发帖 19 积分 42 | |
|
刚才去改了下..估计就是空格的事...
谢谢楼上几位的提醒.....刚开始接触批处理很多东西不懂 感觉在空格上面真是很严格的样子... 以前习惯在=号2边加空格了... |
|
| 第5楼 pooronce | 发表于 2008-03-04 18:10 |
| 中级用户 发帖 250 积分 484 | |
|
因为空格影响了变量的值,所以最后find并未能找到,所以 for语言的输出为空
你让echo去显示空变量,就出现那种情况了 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |