![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 09:10 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 如何读取长文件名里的内容? |
| 可打印版本 886 / 6 |
| 第1楼 23112656 | 发表于 2008-07-31 04:41 |
| 中级用户 发帖 99 积分 220 | |
|
如何读取长文件名里的内容? 大体意思是这样:
我在目录下创建了test.txt和一个用%date%创建的txt文件,也就是这样的:2008-07-31 星期四.txt这样的格式,但是问题就出在这了,为什么下面的代码只能读取test.txt里的内容?而却读取不了"2008-07-31 星期四.txt"这种长文件名还带了空格的文件呢? set t=0 for /F "eol== tokens=1 delims= " %%a in (出问题的地方) do ( set /A t+=%%a ) echo %t% 我本来的意思是想把文本里的内容第一列数字相加的,把出问题的地方改为test.txt就没问题,但是改为时间格式的那个文本就不行啊,请高手支招啊``` |
|
| 第2楼 pusofalse | 发表于 2008-07-31 07:43 |
| 银牌会员 发帖 646 积分 1,604 | |
|
2008-07-31 星期四.txt 有空格,需加""闭合,同时for的选项里面加usebackq ,在eol==之前
[ Last edited by pusofalse on 2008-7-31 at 07:45 AM ] |
|
| 第3楼 HAT | 发表于 2008-07-31 10:18 |
| 版主 发帖 5,017 积分 9,023 | |
| 第4楼 23112656 | 发表于 2008-07-31 16:21 |
| 中级用户 发帖 99 积分 220 | |
Originally posted by HAT at 2008-7-31 10:18 AM: 太感谢了`不过我发现改成 for /F "usebackq eol== tokens=1 delims= " %%a in (type "%date% ???.txt") do ( set /a t+=%%a ) echo %t% 也有效哦`谢谢啊 |
|
| 第5楼 HAT | 发表于 2008-07-31 17:31 |
| 版主 发帖 5,017 积分 9,023 | |
|
4楼的代码无效吧?
如果你想用type,至少用到单引号嘛:) |
|
| 第6楼 23112656 | 发表于 2008-08-01 04:27 |
| 中级用户 发帖 99 积分 220 | |
Originally posted by HAT at 2008-7-31 05:31 PM: 呵呵```忘记写上了`大体意思就是那样 |
|
| 第7楼 23112656 | 发表于 2008-08-01 04:28 |
| 中级用户 发帖 99 积分 220 | |
Originally posted by HAT at 2008-7-31 05:31 PM: 呵呵```忘记写上了`大体意思就是那样 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |