中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-09 07:10
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何读取长文件名里的内容? 查看 884 回复 6
楼 主 如何读取长文件名里的内容? 发表于 2008-07-31 04:41 ·  中国 云南 昆明 电信
中级用户
★★
积分 220
发帖 99
注册 2008-06-26 15:12
18年会员
UID 120818
性别 男
状态 离线
大体意思是这样:
我在目录下创建了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 发表于 2008-07-31 07:43 ·  中国 山东 淄博 联通
银牌会员
★★★
积分 1,604
发帖 646
注册 2008-04-13 23:39
18年会员
UID 115804
性别 男
状态 离线
2008-07-31 星期四.txt 有空格,需加""闭合,同时for的选项里面加usebackq ,在eol==之前

[ Last edited by pusofalse on 2008-7-31 at 07:45 AM ]
心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
3 发表于 2008-07-31 10:18 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
@echo off
set t=0
for /F "usebackq eol== tokens=1 delims= " %%a in ("2008-07-31 星期四.txt") do (
set /a t+=%%a
)
echo %t%
4 发表于 2008-07-31 16:21 ·  中国 云南 昆明 电信
中级用户
★★
积分 220
发帖 99
注册 2008-06-26 15:12
18年会员
UID 120818
性别 男
状态 离线
Originally posted by HAT at 2008-7-31 10:18 AM:
@echo off
set t=0
for /F "usebackq eol== tokens=1 delims= " %%a in ("2008-07-31 星期四.txt") do (
set /a t+=%%a
)
echo %t%


太感谢了`不过我发现改成
for /F "usebackq eol== tokens=1 delims= " %%a in (type "%date% ???.txt") do (
set /a t+=%%a
)
echo %t%

也有效哦`谢谢啊
5 发表于 2008-07-31 17:31 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
4楼的代码无效吧?
如果你想用type,至少用到单引号嘛:)
6 发表于 2008-08-01 04:27 ·  中国 云南 昆明 电信
中级用户
★★
积分 220
发帖 99
注册 2008-06-26 15:12
18年会员
UID 120818
性别 男
状态 离线
Originally posted by HAT at 2008-7-31 05:31 PM:
4楼的代码无效吧?
如果你想用type,至少用到单引号嘛:)


呵呵```忘记写上了`大体意思就是那样
7 发表于 2008-08-01 04:28 ·  中国 云南 昆明 电信
中级用户
★★
积分 220
发帖 99
注册 2008-06-26 15:12
18年会员
UID 120818
性别 男
状态 离线
Originally posted by HAT at 2008-7-31 05:31 PM:
4楼的代码无效吧?
如果你想用type,至少用到单引号嘛:)


呵呵```忘记写上了`大体意思就是那样
论坛跳转: