首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从具有不同前缀和不同扩展名的文件夹中搜索日期为T(当前日期/今天日期)的文件

从具有不同前缀和不同扩展名的文件夹中搜索日期为T(当前日期/今天日期)的文件
EN

Stack Overflow用户
提问于 2014-02-27 15:12:18
回答 1查看 52关注 0票数 0

我正在寻找T(当前日期/今天日期)日期的文件在特定的文件夹。C:\Users\abc\Desktop\CBS\OUTBOX。

会有T -1,T -2...文件也会在那里。

并且将有日期为T的文件,以前缀(NP和PN)开头,然后是日期,如PN27022014NP27022014

还有另一种情况,两个文件都将以5个不同的扩展名结尾,如

代码语言:javascript
复制
PN27022014.TRN
PN27022014.BAL
PN27022014.NEG
PN27022014.NBL
PN27022014.EFG
NP27022014.TRN
NP27022014.BAL
NP27022014.NEG
NP27022014.NBL
NP27022014.EFG

我有查询检查文件的单一前缀和结尾的单一扩展名。

代码语言:javascript
复制
@echo off
SetLocal enabledelayedexpansion
for /f "tokens=2-4 delims=/ " %%a in ('date /T') do set year=%%c
for /f "tokens=2-4 delims=/ " %%a in ('date /T') do set month=%%a
for /f "tokens=2-4 delims=/ " %%a in ('date /T') do set day=%%b

set TODAY=%day%%month%%year%
echo %TODAY% 


for /F "tokens=1" %%a IN ('Dir "C:\Users\abc\Desktop\CBS\OUTBOX\PN*%TODAY%*.TRN"  /-C/S/A:-D 

2^>nul') Do Set y=!n2! & Set n2=%%a
echo out %y%

If %y% gtr 1 ( echo 4 ) else ( echo 3 )

如何获取具有不同扩展名的前缀。

如果存在每个前缀和每个扩展名都大于1的文件,则查询应输出4。

EN

回答 1

Stack Overflow用户

发布于 2014-02-27 21:29:21

这将检测与todays date filespec匹配的文件数量,并告诉您是否找到10个文件。

日期例程需要XP Pro或更高版本。

代码语言:javascript
复制
@echo off
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%"

set "datestamp=%DD%%MM%%YYYY%"


for /f "delims=" %%a in (' dir /b /a-d "C:\Users\abc\Desktop\CBS\OUTBOX\??%datestamp%.*" ^|find /c /v "" ') do (
    if %%a EQU 10 (echo 10 files are present) else (echo incorrect number of files)
)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22061509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档