中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求遍历全盘查找某天生成的所有文件
作者:
标题: 求遍历全盘查找某天生成的所有文件 上一主题 | 下一主题
freeapple
初级用户





积分 56
发帖 25
注册 2006-11-26
状态 离线
『楼 主』:  求遍历全盘查找某天生成的所有文件

如题,小弟初学批处理不知能否实现.

2006-12-14 11:47
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 2 楼』:  


  可以实现,搜索一下论坛的帖子就有很多。


2006-12-14 12:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeapple
初级用户





积分 56
发帖 25
注册 2006-11-26
状态 离线
『第 3 楼』:  

没有没代码贴上来来呢?不好找额!!!!!!!

2006-12-15 08:57
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 4 楼』:  


  如果支持WMIC的话,可以使用下面的代码,查找过程可能比较漫长。
::code by lxmxn @ cn-dos.net
::全盘搜索指定日期生成的文件。
@echo off&setlocal enabledelayedexpansion
echo\&echo/
echo;
set /p date_=请输入要查找的文件生成日期,格式为纯数字,比如 20061214 ,代表2006年12月14日:
set db=%date_%000000.000000+480
set da=%date_%235959.000000+480
for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
    set var=%%i
    set drive=!var:~-2!
    fsutil fsinfo drivetype !drive!|find "固定" >nul&& (
    call :info
    wmic datafile where "drive='!drive!' and creationdate>='%db%' and creationdate<='%da%'" get name,creationdate
    set /p choose=在 !drive! 盘查找完毕,查找过程长,是否继续查找?【Y】/【N】
    if /i not "!choose!"=="Y" goto :eof
        )
)
goto :eof

:info
    cls
    echo\&echo 正在 !drive! 盘查找%date_:~0,4%年%date_:~4,2%月%date_:~6,2%日生成的所有文件,查找过程可能需要很长时间,请耐心等待……
    goto :eof


   此帖被 +5 点积分      点击查看详情   
评分人:【 redtek 分数: +5  时间:2006-12-15 22:24


2006-12-15 12:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
freeapple
初级用户





积分 56
发帖 25
注册 2006-11-26
状态 离线
『第 5 楼』:  

谢谢  lxmxn
论坛里的好同志^_^

2006-12-15 15:34
查看资料  发短消息 网志   编辑帖子  回复  引用回复
regvip2008
初级用户





积分 187
发帖 87
注册 2007-10-23
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by lxmxn at 2006-12-15 12:39 PM:

  如果支持WMIC的话,可以使用下面的代码,查找过程可能比较漫长。[code]
::code by lxmxn @ cn-dos.net
::全盘搜索指定日期生成的文件。
...

小弟想请教下版主:
set db=%date_%000000.000000+480
set da=%date_%235959.000000+480
这两句是啥意思?谢谢!

2008-3-5 14:59
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by regvip2008 at 2008-3-5 02:59 PM:


小弟想请教下版主:
set db=%date_%000000.000000+480
set da=%date_%235959.000000+480
这两句是啥意思?谢谢!

自己运行一下这个命令就知道版主为什么那样写了
wmic datafile where "Name='c:\\test\\hello.txt'" get CreationDate,FileName

2008-3-5 17:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
plp626
银牌会员

钻石会员


积分 2278
发帖 1020
注册 2007-11-19
状态 离线
『第 8 楼』:  

粘贴到命令行下试试:
@echo off
for /f "skip=1" %a in ('wmic logicaldisk where "drivetype=3"') do dir/a/tc/s %a\|findstr /b "%date:~,10%"|sort|findstr /ve \.




山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
2008-3-6 09:50
查看资料  发短消息 网志   编辑帖子  回复  引用回复
regvip2008
初级用户





积分 187
发帖 87
注册 2007-10-23
状态 离线
『第 9 楼』:  



  Quote:
Originally posted by HAT at 2008-3-5 05:00 PM:

自己运行一下这个命令就知道版主为什么那样写了
wmic datafile where "Name='c:\\test\\hello.txt'" get CreationDate,FileName

非常感谢HAT兄的回复!问题解决了!

2008-3-12 16:24
查看资料  发短消息 网志   编辑帖子  回复  引用回复
regvip2008
初级用户





积分 187
发帖 87
注册 2007-10-23
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by plp626 at 2008-3-6 09:50 AM:
粘贴到命令行下试试:

[code]@echo off
for /f "skip=1" %a in ('wmic logicaldisk where "drivetype=3"') do dir/a/tc/s %a\|findstr /b "%date:~,10%"|sort|findstr ...

请问plp626兄,能否解释下上面那条词句的意思?

2008-3-12 16:26
查看资料  发短消息 网志   编辑帖子  回复  引用回复
SpikeKnox
初级用户




积分 116
发帖 28
注册 2007-1-3
状态 离线
『第 11 楼』:  如果有PowerShell

Get-PSDrive -PSProvider FileSystem | %{dir -r $_.Root | where {$_.LastWriteTime -match "2008.02.18"}}

2008-3-12 17:20
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: