标题: 论坛上看到全盘搜索指定日期代码,请高手修改一下!
[打印本页]
作者: 5872169
时间: 2008-3-6 12:30
标题: 论坛上看到全盘搜索指定日期代码,请高手修改一下!
在论坛上看到一段代码!请高手改一下!查到文件后,指明路径,下面这段代码查到文件后没有指明路径!
cd\&dir/a/s/tc *.exe|findstr /bc:"2008-03"
[
Last edited by 5872169 on 2008-3-6 at 12:40 PM ]
作者: plp626
时间: 2008-3-6 13:13
请到我的那个帖子跟帖我给你详细解释
作者: moniuming
时间: 2008-3-13 18:19
不知道是不是你想要的:
@echo off
setlocal enabledelayedexpansion
for %%a in (c d e f) do (
for /f "delims=" %%i in ('dir /s /a-d "%%a:\*.exe"^|findstr "2008-03"') do (
set aa="%%~dpnxi"
echo !aa!
)
)
作者: moniuming
时间: 2008-3-13 18:36
噢,不行! 测试后发现列出来的目录是运行批处理的目录.
作者: moniuming
时间: 2008-3-13 19:04
这个测试通过了:
@echo off
echo.
for %%a in (c d e f) do (
for /f "tokens=1,3* delims= " %%i in ('dir /s /a-d /tc "%%i:\*.exe"^|findstr "2008-03"') do (
dir /s /b /a-d /tc "%%a:\%%k"
)
)
echo.&pause
作者: 5872169
时间: 2008-3-13 19:15
moniuming,没有通过测试,提示目录名和卷标语法不正确!!
[
Last edited by 5872169 on 2008-3-13 at 07:16 PM ]
作者: terse
时间: 2008-3-13 19:58
@echo off&setlocal enabledelayedexpansion
for %%a in (c d e f) do for /f "delims=" %%i in ('dir /s /b /a-d "%%a:\*.exe"') do set t=%%~ti&if "!t:~0,7!" == "2008-03" echo %%~fi
)
pause
作者: 5872169
时间: 2008-3-13 21:48
terse,测试成功了,但是如果输入2008-03-13就不行了!
作者: moniuming
时间: 2008-3-13 22:00
在我的机子上运行通过了,这是我的测试代码:
@echo off
echo.
for %%a in (c d e f) do (
for /f "tokens=1,3* delims= " %%i in ('dir /s /a-d /tc "%%a:\*.exe"^|findstr "2008-03"') do (
dir /s /b /a-d /tc "%%a:\%%k"
)
)
echo.&pause
运行结果:
F:\test\more\新建文件夹>查找指定时间创建的文件并列出路径.bat
c:\WINDOWS\system32\gawk.exe
c:\WINDOWS\system32\winclip.exe
c:\WINDOWS\system32\taskmgr.exe
c:\Documents and Settings\aa\「开始」菜单\程序\启动\taskmgr.exe
d:\Program Files\360safe\360safeup.exe
d:\Program Files\360safe\SoftMgr\esslibupdate.exe
d:\Program Files\eMule\update\eMule-0.48a-VeryCD080126-Update.exe
d:\Program Files\kof1.0\kof1.0.exe
d:\Program Files\Maxthon2\_Maxthon.exe
d:\Program Files\Tencent\QQ\QQPlayerSvr.exe
d:\Program Files\Thunder\Program\Update\PPlayerSetup_1.2.8.122_20080306.exe
d:\Program Files\Thunder\Program\Update\UpdateStreamMedialib_20080311.exe
d:\test\ActiveMouse.exe
e:\RECYCLER\S-1-5-21-220523388-1004336348-725345543-1003\De16.exe
e:\安装程序\Adobeflashplayer.exe
f:\test\可执行文件当服务运行\runassrv.exe
...
作者: moniuming
时间: 2008-3-13 22:02
又没看到刷新的内容,晕
terse的代码只显示到月份的
作者: 5872169
时间: 2008-3-13 22:09
moniuming,我现在试了一下,测试通过了
作者: moniuming
时间: 2008-3-13 22:09
我发现五楼代码的问题了:
for /f "tokens=1,3* delims= " %%i in ('dir /s /a-d /tc "
%%i:\*.exe"^|findstr "2008-03"') do (
红色部分应为
%%a
作者: terse
时间: 2008-3-14 01:21
Quote: |
Originally posted by 5872169 at 2008-3-13 21:48:
terse,测试成功了,但是如果输入2008-03-13就不行了! |
|
你把 !t:~0,7! 改为 !t:~0,10! 试
作者: plp626
时间: 2008-3-14 17:46
Quote: |
Originally posted by terse at 2008-3-13 07:58 PM:
@echo off&setlocal enabledelayedexpansion
for %%a in (c d e f) do for /f "delims=" %%i in ('dir /s /b /a-d "%%a:\*.exe"') do set t=%%~ti&if "!t:~0,7!" == &quo ... |
|
%~fi得到的不是查找文件的 真实路径.
作者: terse
时间: 2008-3-14 22:57
Quote: |
Originally posted by plp626 at 2008-3-14 17:46:
%~fi得到的不是查找文件的 真实路径. |
|
你那边得到的什么路径?
我这里的是!
c:\WINDOWS\Installer\{A9FF0492-05E5-F426-3104-3DDA813E2E23}\ARPPRODUCTICON.exe
c:\WINDOWS\Installer\{C5F2DBF1-6A08-39D2-9871-BF8F29F73C88}\ARPPRODUCTICON.exe
c:\WINDOWS\Installer\{C849D7B5-DCE7-9080-687E-CF5D3D535190}\ARPPRODUCTICON.exe
c:\WINDOWS\Installer\{D63B08C9-50B9-D513-083C-BF9310149C35}\ARPPRODUCTICON.exe
d:\Desktop\WinMount_setup.exe
d:\Desktop\CrabFLV\CrabFLV.exe
d:\Temp\HKFX2008__OK.exe
e:\Program Files\360\uninst.exe
e:\Program Files\360\SoftMgr\esslibupdate.exe
e:\Program Files\VPP3\pp31setup.exe
e:\Program Files\VPP3\Update\pp31setup.exe
f:\Program Files\utorrent\utorrent.exe