中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-05 20:25
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]如何快速从大量文件中找到当天的文件? 查看 748 回复 6
楼 主 [求助]如何快速从大量文件中找到当天的文件? 发表于 2007-09-20 11:00 ·  中国 上海 联通
初级用户
积分 179
发帖 35
注册 2003-06-03 00:00
23年会员
UID 3055
性别 男
状态 离线
请问如何快速从大量文件中找到修改日期为当天的文件?操作系统是win2k server

因为文件夹中文件几万个,使用如下循环太慢了,请问哪位大侠有好办法?谢谢!
for /r d:\test\log\ %%f in (*.log) do if %%~tf gtr 2007-09-20 echo %%f

[ Last edited by wiq on 2007-9-20 at 11:02 AM ]
2 发表于 2007-09-20 12:41 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
几万个文件,没理由不慢。

试试VBS能否快点。
3 发表于 2007-09-20 13:14 ·  中国 上海 联通
初级用户
积分 179
发帖 35
注册 2003-06-03 00:00
23年会员
UID 3055
性别 男
状态 离线
谢谢版主回复!
只是VBS我不会用
我在xp和win2003下使用forfiles速度就快多了,我把forfiles拷贝到2k下不能运行,要不我也就拷贝过来用了。
4 发表于 2007-09-20 14:50 ·  中国 辽宁 本溪 联通
银牌会员
★★★
积分 1,212
发帖 464
注册 2006-12-13 21:11
19年会员
UID 73417
性别 男
状态 离线

set ws=createobject("wscript.shell")
set fso=createobject("scripting.filesystemobject")
set folder=fso.getfolder(".")
for each file in folder.files
if lcase(right(file,3))="log" and instr(file.DateLastModified,date)<>0 then s=s & file.name & vbcrlf
next
set file=fso.createtextfile("文件列表.txt")
file.writeline "修改日期为当天的文件"
file.writeline "-------------------------------------------------------"
file.write s
file.close
ws.run "文件列表.txt"
5 发表于 2007-09-20 16:28 ·  中国 上海 联通
初级用户
积分 179
发帖 35
注册 2003-06-03 00:00
23年会员
UID 3055
性别 男
状态 离线
谢谢楼上!我试试去。
6 发表于 2007-09-21 15:46 ·  中国 广东 东莞 电信
初级用户
积分 32
发帖 17
注册 2007-09-21 14:17
18年会员
UID 97962
性别 男
状态 离线
很实用
7 发表于 2007-09-21 17:40 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
如果不追求自动化的话,直接资源管理器按时间排列下……
论坛跳转: